summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/trace_reference.txt153804
1 files changed, 114636 insertions, 39168 deletions
diff --git a/tests/trace_reference.txt b/tests/trace_reference.txt
index 46015011..3e0483f8 100644
--- a/tests/trace_reference.txt
+++ b/tests/trace_reference.txt
@@ -1015,6 +1015,42 @@ fn id_mut_mut_test2() {
return
}
+fn id_mut_mut_test3() {
+ var@0 : ();
+ x : i32;
+ px : &'_ mut (i32);
+ ppx : &'_ mut (&'_ mut (i32));
+ ppy : &'_ mut (&'_ mut (i32));
+ var@5 : &'_ mut (&'_ mut (i32));
+ ppz : &'_ mut (&'_ mut (i32));
+ var@7 : &'_ mut (&'_ mut (i32));
+ var@8 : bool;
+ var@9 : bool;
+ var@10 : i32;
+ var@11 : bool;
+ var@12 : bool;
+ var@13 : i32;
+
+ x := 0: i32;
+ px := &mut x;
+ ppx := &mut px;
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+}
+
[Debug] test_unit_function: test2
[Debug]
**About to evaluate statement**: [
@@ -1039,17 +1075,17 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1065,21 +1101,45 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+23: u32
+
[Debug]
**About to evaluate statement**: [
y := 44: u32;
@@ -1102,17 +1162,17 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1128,21 +1188,45 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+44: u32
+
[Debug]
**About to evaluate statement**: [
z := 67: u32;
@@ -1164,17 +1248,17 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1190,21 +1274,45 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+67: u32
+
[Debug]
**About to evaluate statement**: [
var@5 := copy x;
@@ -1225,17 +1333,17 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1251,21 +1359,45 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
(p).x := move var@5;
@@ -1285,17 +1417,17 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> 23: u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> 23: u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1311,21 +1443,45 @@ fn id_mut_mut_test2() {
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> 23: u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> 23: u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> 23: u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+move var@5
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (0, None)), 0))
ty: (Types.Adt ((Types.AdtId 0), [],
@@ -1348,17 +1504,17 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1374,21 +1530,45 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+67: u32
+
[Debug]
**About to evaluate statement**: [
(s as test1::Sum::Right).0 := true;
@@ -1406,17 +1586,17 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1432,20 +1612,44 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+- op:
+true
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (6, (Some 1))), 0))
@@ -1466,17 +1670,17 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1492,17 +1696,17 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1522,17 +1726,17 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1548,20 +1752,44 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+- op:
+3: u64
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (2, (Some 0))), 0))
@@ -1580,17 +1808,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1606,17 +1834,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1634,17 +1862,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1660,17 +1888,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1687,17 +1915,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> test1::EmptyEnum::Empty ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> test1::EmptyEnum::Empty ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1713,17 +1941,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> test1::EmptyEnum::Empty ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> test1::EmptyEnum::Empty ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -1739,17 +1967,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> test1::EmptyEnum::Empty ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> test1::Enum::Variant1 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> test1::EmptyEnum::Empty ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> test1::Enum::Variant1 ;
}
@@ -1775,16 +2003,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -1800,20 +2028,66 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+4: u32
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+3: u32
+
[Debug]
**About to evaluate statement**: [
var@4 := copy x;
@@ -1834,26 +2108,26 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -1869,29 +2143,62 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -1912,26 +2219,26 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 4: u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -1947,30 +2254,63 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 4: u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy y
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 >= move var@5;
@@ -1989,26 +2329,26 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 4: u32 ;
- var@5 -> 3: u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 3: u32 ;
}
@@ -2024,30 +2364,96 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 4: u32 ;
- var@5 -> 3: u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 3: u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 3: u32 ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 3: u32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
if (move var@3) {
@@ -2065,26 +2471,26 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -2105,29 +2511,62 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -2140,30 +2579,63 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
return
@@ -2175,26 +2647,26 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> 4: u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> 4: u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -2205,62 +2677,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> 4: u32 ;
- x -> 4: u32 ;
- y -> 3: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> 4: u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
-[Debug] ctx_pop_frame: locals to drop: [5,4,3,2,1]
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: var@3
-[Debug] drop_value: place: y
-[Debug] drop_value: place: x
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> 4: u32 ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> 4: u32 ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 3: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
y := move get_max(10: u32, 11: u32);
@@ -2280,16 +2751,22 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -2305,19 +2782,83 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+- op:
+10: u32
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+- op:
+11: u32
[Debug]
**About to evaluate statement**: [
@@ -2339,26 +2880,32 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -2374,30 +2921,75 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@5 := copy y;
@@ -2417,26 +3009,32 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 10: u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 10: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -2452,30 +3050,75 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 10: u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 10: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 10: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy y
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 >= move var@5;
@@ -2494,26 +3137,32 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 10: u32 ;
- var@5 -> 11: u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 10: u32 ;
+ Some (var@5) -> 11: u32 ;
}
@@ -2529,30 +3178,114 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 10: u32 ;
- var@5 -> 11: u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 10: u32 ;
+ Some (var@5) -> 11: u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 10: u32 ;
+ Some (var@5) -> 11: u32 ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 11: u32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
if (move var@3) {
@@ -2570,26 +3303,32 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> false ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -2610,30 +3349,75 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> false ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
var@0 := copy y
@@ -2645,30 +3429,75 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy y
+
[Debug]
**About to evaluate statement**: [
return
@@ -2680,26 +3509,32 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> 11: u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> 11: u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -2710,62 +3545,73 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> 11: u32 ;
- x -> 10: u32 ;
- y -> 11: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> 11: u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
-[Debug] ctx_pop_frame: locals to drop: [5,4,3,2,1]
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: var@3
-[Debug] drop_value: place: y
-[Debug] drop_value: place: x
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
# Frame 1:
{
- var@0 -> 11: u32 ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> 11: u32 ;
+ Some (x) -> 10: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
var@4 := copy x;
@@ -2784,16 +3630,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -2809,20 +3667,67 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@5 := copy y;
@@ -2840,16 +3745,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> ⊥ : u32 ;
- var@4 -> 4: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -2865,19 +3782,66 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> ⊥ : u32 ;
- var@4 -> 4: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+- op:
+copy y
[Debug]
**About to evaluate statement**: [
@@ -2895,16 +3859,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> ⊥ : u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -2920,19 +3896,101 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> ⊥ : u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+- op:
+copy var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+- op:
+copy var@5
[Debug]
**About to evaluate statement**: [
@@ -2949,16 +4007,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -2974,20 +4044,67 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+- op:
+copy z
+
[Debug]
**About to evaluate statement**: [
var@8 := move var@9 == 15: u32;
@@ -3002,16 +4119,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> 15: u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 15: u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -3027,20 +4156,102 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> 15: u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 15: u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 15: u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@9
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+- op:
+15: u32
+
[Debug]
**About to evaluate statement**: [
var@7 := ¬ move var@8;
@@ -3054,16 +4265,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> true ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -3079,19 +4302,66 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> true ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+- op:
+move var@8
[Debug]
**About to evaluate statement**: [
@@ -3105,16 +4375,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> false ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -3130,20 +4412,67 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> false ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
return
@@ -3155,16 +4484,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 4: u32 ;
- y -> 11: u32 ;
- z -> 15: u32 ;
- var@4 -> 4: u32 ;
- var@5 -> 11: u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 4: u32 ;
+ Some (y) -> 11: u32 ;
+ Some (z) -> 15: u32 ;
+ Some (var@4) -> 4: u32 ;
+ Some (var@5) -> 11: u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 4: u32 ;
+ None -> 3: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 10: u32 ;
+ None -> 11: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
}
@@ -3183,9 +4524,9 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
}
@@ -3201,13 +4542,29 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+}
+
+
+- op:
+3: i32
+
[Debug]
**About to evaluate statement**: [
y := -3: i32;
@@ -3220,9 +4577,9 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 3: i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> ⊥ : i32 ;
}
@@ -3238,12 +4595,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 3: i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> ⊥ : i32 ;
}
+- op:
+-3: i32
[Debug]
**About to evaluate statement**: [
@@ -3256,9 +4629,9 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 3: i32 ;
- y -> -3: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> -3: i32 ;
}
@@ -3283,13 +4656,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3305,17 +4678,37 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -3334,13 +4727,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3356,13 +4749,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3384,13 +4777,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3406,13 +4799,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3433,13 +4826,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3455,17 +4848,37 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@6 := copy x;
@@ -3481,13 +4894,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (1: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3503,17 +4916,162 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (1: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.OuterBorrows (InterpreterBorrowsCore.Borrow 1))
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (&mut@0 (1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@5 := move var@6 == 1: i32;
@@ -3528,13 +5086,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> 1: i32 ;
}
@@ -3550,17 +5108,57 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> 1: i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> 1: i32 ;
+}
+
+
+- op:
+move var@6
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@4 := ¬ move var@5;
@@ -3574,13 +5172,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> true ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> true ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3596,16 +5194,36 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> true ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> true ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> true ;
+ Some (var@6) -> ⊥ : i32 ;
}
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -3619,13 +5237,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> false ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3641,16 +5259,36 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> false ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -3663,13 +5301,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -3710,25 +5348,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -3744,29 +5382,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
y := 1: i32;
@@ -3801,25 +5471,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -3835,29 +5505,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -3891,25 +5593,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -3925,25 +5627,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -3980,25 +5682,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 1: i32 ;
- px -> &mut@0 (0: i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4014,25 +5716,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 1: i32 ;
- px -> &mut@0 (0: i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4068,25 +5770,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@0 (0: i32) ;
- py -> &mut@1 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4102,25 +5804,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@0 (0: i32) ;
- py -> &mut@1 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4155,25 +5857,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (1: i32) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4189,25 +5891,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (1: i32) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4241,25 +5943,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> &mut@3 (1: i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> &mut@3 (1: i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4275,28 +5977,156 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> &mut@3 (1: i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> &mut@3 (1: i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> &mut@3 (1: i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@6
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (⊥ : &'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> &mut@3 (1: i32) ;
+ None -> &mut@0 (0: i32) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (0: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (⊥ : &'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> &mut@3 (1: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
}
+[Debug] give_back_value:
+- bid: 0
+- value: 0: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (⊥ : &'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> &mut@3 (1: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -4326,25 +6156,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (1: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (1: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4360,28 +6190,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (1: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (1: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (1: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+2: i32
[Debug]
**About to evaluate statement**: [
@@ -4410,25 +6272,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (2: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4444,28 +6306,150 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (2: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+copy *(px)
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 2
+- content: &mut@2 (&mut@3 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 2
+- value: &mut@3 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -4493,25 +6477,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> 2: i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 2: i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4527,29 +6511,93 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> 2: i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 2: i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 2: i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@9
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
+
[Debug]
**About to evaluate statement**: [
var@7 := ¬ move var@8;
@@ -4575,25 +6623,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> true ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4609,28 +6657,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> true ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@8
[Debug]
**About to evaluate statement**: [
@@ -4656,25 +6736,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> false ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4690,29 +6770,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> false ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
var@12 := copy x;
@@ -4736,25 +6848,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4770,28 +6882,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -4815,25 +6959,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 0: i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 0: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4849,29 +6993,93 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 0: i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 0: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 0: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@12
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
var@10 := ¬ move var@11;
@@ -4893,25 +7101,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> true ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -4927,28 +7135,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> true ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@11
[Debug]
**About to evaluate statement**: [
@@ -4970,25 +7210,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> false ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5004,28 +7244,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> false ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -5046,25 +7318,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5080,28 +7352,150 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+copy *(py)
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: 2: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -5121,25 +7515,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> 2: i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 2: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5155,28 +7549,92 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> 2: i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 2: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 2: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@15
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
[Debug]
**About to evaluate statement**: [
@@ -5195,25 +7653,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> true ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> true ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5229,29 +7687,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> true ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> true ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> true ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@14
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@13);
@@ -5268,25 +7758,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> false ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> false ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5302,28 +7792,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> false ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> false ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> false ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@13
[Debug]
**About to evaluate statement**: [
@@ -5340,25 +7862,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5374,29 +7896,151 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy y
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: 2: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@17 := move var@18 == 2: i32;
@@ -5411,25 +8055,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> 2: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 2: i32 ;
}
@@ -5445,28 +8089,92 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> 2: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 2: i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 2: i32 ;
}
+- op:
+move var@18
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
[Debug]
**About to evaluate statement**: [
@@ -5481,25 +8189,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> true ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> true ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5515,28 +8223,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> true ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> true ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> true ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@17
[Debug]
**About to evaluate statement**: [
@@ -5550,25 +8290,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> false ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> false ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5584,29 +8324,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> false ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> false ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> false ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@16
+
[Debug]
**About to evaluate statement**: [
return
@@ -5618,25 +8390,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -5659,10 +8431,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -5678,10 +8450,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -5702,10 +8474,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
}
@@ -5721,10 +8493,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
}
@@ -5734,44 +8506,87 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
- type_params: [test1::List<i32>]
- args: [move var@3]
- dest: var@2
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+}
+
+
+- op:
+move var@3
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (@return) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@1) -> test1::List::Nil ;
+}
+
+
+- op:
+move var@1
+
[Debug] ctx_pop_frame:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- @return -> @Box(test1::List::Nil) ;
- var@1 -> ⊥ : test1::List<i32> ;
+ Some (@return) -> @Box(test1::List::Nil) ;
+ Some (var@1) -> ⊥ : test1::List<i32> ;
}
-[Debug] ctx_pop_frame: locals to drop: [1]
-[Debug] drop_value: place: var@1
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- @return -> @Box(test1::List::Nil) ;
- var@1 -> ⊥ : test1::List<i32> ;
+ Some (@return) -> @Box(test1::List::Nil) ;
+ Some (var@1) -> ⊥ : test1::List<i32> ;
}
+
+- op:
+move @return
+
[Debug]
**About to evaluate statement**: [
(l as test1::List::Cons).0 := 0: i32;
@@ -5787,10 +8602,12 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -5806,13 +8623,34 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+- op:
+0: i32
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (1, (Some 0))), 0))
@@ -5831,10 +8669,12 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -5850,13 +8690,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+- op:
+move var@2
[Debug]
**About to evaluate statement**: [
@@ -5871,10 +8732,12 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -5890,10 +8753,12 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -5910,10 +8775,12 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -5929,10 +8796,12 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -5949,10 +8818,12 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -5980,15 +8851,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -6004,15 +8875,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -6022,54 +8893,107 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- type_params: [i32]
- args: [0: i32]
- dest: b
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (@return) -> ⊥ : std::boxed::Box<i32> ;
+ Some (var@1) -> 0: i32 ;
+}
+
+
+- op:
+move var@1
+
[Debug] ctx_pop_frame:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
# Frame 1:
{
- @return -> @Box(0: i32) ;
- var@1 -> ⊥ : i32 ;
+ Some (@return) -> @Box(0: i32) ;
+ Some (var@1) -> ⊥ : i32 ;
}
-[Debug] ctx_pop_frame: locals to drop: [1]
-[Debug] drop_value: place: var@1
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
# Frame 1:
{
- @return -> @Box(0: i32) ;
- var@1 -> ⊥ : i32 ;
+ Some (@return) -> @Box(0: i32) ;
+ Some (var@1) -> ⊥ : i32 ;
}
+
+- op:
+move @return
+
[Debug]
**About to evaluate statement**: [
var@3 := &two-phase b;
@@ -6091,15 +9015,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(0: i32) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @Box(0: i32) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
}
@@ -6115,15 +9041,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(0: i32) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @Box(0: i32) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
}
@@ -6148,15 +9076,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({0}, @Box(0: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⌊inactivated_mut@0⌋ ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({0}, @Box(0: i32)) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⌊inactivated_mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
}
@@ -6172,15 +9102,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({0}, @Box(0: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⌊inactivated_mut@0⌋ ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({0}, @Box(0: i32)) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⌊inactivated_mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
}
@@ -6191,66 +9123,86 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- args: [move var@3]
- dest: x
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Adt
- { Values.variant_id = <opaque>;
- field_values =
- [{ Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
- ]
- });
- ty =
- (Types.Adt ((Types.Assumed Types.Box), [], [(Types.Integer Types.I32)])) }
+@Box(0: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> &mut@0 (@Box(0: i32)) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@3
+
[Debug] ctx_pop_frame:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
}
# Frame 1:
{
- @return -> &mut@1 (0: i32) ;
- var@1 -> &mut@0 (@Box(⌊mut@1⌋)) ;
+ Some (@return) -> &mut@1 (0: i32) ;
+ Some (var@1) -> &mut@0 (@Box(⌊mut@1⌋)) ;
}
-[Debug] ctx_pop_frame: locals to drop: [1]
-[Debug] drop_value: place: var@1
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(⌊mut@1⌋) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
}
# Frame 1:
{
- @return -> &mut@1 (0: i32) ;
- var@1 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (@return) -> &mut@1 (0: i32) ;
+ Some (var@1) -> &mut@0 (@Box(⌊mut@1⌋)) ;
}
+
+- op:
+move @return
+
[Debug]
**About to evaluate statement**: [
*(x) := 1: i32;
@@ -6270,15 +9222,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(⌊mut@1⌋) ;
- x -> &mut@1 (0: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
}
@@ -6294,18 +9250,48 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(⌊mut@1⌋) ;
- x -> &mut@1 (0: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
}
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -6325,15 +9311,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(⌊mut@1⌋) ;
- x -> &mut@1 (1: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
}
@@ -6349,18 +9339,189 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(⌊mut@1⌋) ;
- x -> &mut@1 (1: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
+}
+
+
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 1))
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
}
+[Debug] give_back_value:
+- bid: 1
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(⌊mut@1⌋)) ;
+}
+
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@0 (@Box(1: i32)) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (@Box(1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: @Box(1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -6379,15 +9540,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, @Box(1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⌊shared@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(1: i32)) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⌊shared@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
}
@@ -6403,15 +9568,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, @Box(1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⌊shared@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(1: i32)) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⌊shared@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
}
@@ -6421,54 +9590,91 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- type_params: [i32]
- args: [move var@5]
- dest: x
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(1: i32)) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⌊shared@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+}
+
+
+- op:
+move var@5
+
[Debug] ctx_pop_frame:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
}
# Frame 1:
{
- @return -> ⌊shared@3⌋ ;
- var@1 -> ⌊shared@2⌋ ;
+ Some (@return) -> ⌊shared@3⌋ ;
+ Some (var@1) -> ⌊shared@2⌋ ;
}
-[Debug] ctx_pop_frame: locals to drop: [1]
-[Debug] drop_value: place: var@1
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
}
# Frame 1:
{
- @return -> ⌊shared@3⌋ ;
- var@1 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (@return) -> ⌊shared@3⌋ ;
+ Some (var@1) -> ⌊shared@2⌋ ;
}
+
+- op:
+move @return
+
[Debug]
**About to evaluate statement**: [
var@8 := copy *(x);
@@ -6485,15 +9691,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
@@ -6509,19 +9721,53 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
+}
+
+
+- op:
+copy *(x)
+
[Debug]
**About to evaluate statement**: [
var@7 := move var@8 == 1: i32;
@@ -6537,15 +9783,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
@@ -6561,18 +9813,80 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
+}
+
+
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -6588,15 +9902,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> true ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
@@ -6612,19 +9932,53 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> true ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@6);
@@ -6638,15 +9992,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> false ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
@@ -6662,19 +10022,53 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> false ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
drop(b);
@@ -6687,15 +10081,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
@@ -6711,20 +10111,132 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @Box(@shared_loan({3}, 1: i32)) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
}
[Debug] drop_value: place: b
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⌊shared@2⌋ ;
+ None -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+}
+
+[Debug] give_back:
+- bid: 2
+- content: ⌊shared@2⌋
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ None -> @shared_loan({2}, @Box(@shared_loan({3}, 1: i32))) ;
+}
+
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ None -> @Box(@shared_loan({3}, 1: i32)) ;
+}
+
+[Debug] give_back:
+- bid: 3
+- content: ⌊shared@3⌋
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ None -> @Box(@shared_loan({3}, 1: i32)) ;
+}
+
+
[Debug]
**About to evaluate statement**: [
return
@@ -6736,15 +10248,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<i32> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ None -> ⊥ : &'_ (i32) ;
+ None -> ⊥ : &'_ (std::boxed::Box<i32>) ;
}
@@ -6770,15 +10288,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -6794,19 +10312,41 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
px := &x;
@@ -6826,15 +10366,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -6850,15 +10390,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -6881,15 +10421,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -6905,19 +10445,41 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
y := move copy_int(move var@4);
@@ -6935,15 +10497,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> 0: i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> 0: i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -6959,18 +10521,40 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> 0: i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> 0: i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> 0: i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -6984,21 +10568,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : i32 ;
- x -> 0: i32 ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> 0: i32 ;
}
@@ -7014,24 +10598,52 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> 0: i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : i32 ;
- x -> 0: i32 ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> 0: i32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -7044,21 +10656,21 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> 0: i32 ;
- x -> 0: i32 ;
+ Some (var@0) -> 0: i32 ;
+ Some (x) -> 0: i32 ;
}
@@ -7069,48 +10681,51 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> 0: i32 ;
- x -> 0: i32 ;
+ Some (var@0) -> 0: i32 ;
+ Some (x) -> 0: i32 ;
}
-[Debug] ctx_pop_frame: locals to drop: [1]
-[Debug] drop_value: place: x
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> 0: i32 ;
- x -> ⊥ : i32 ;
+ Some (var@0) -> 0: i32 ;
+ Some (x) -> 0: i32 ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
var@7 := copy *(px);
@@ -7127,15 +10742,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
@@ -7151,19 +10768,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
+}
+
+
+- op:
+copy *(px)
+
[Debug]
**About to evaluate statement**: [
var@8 := copy y;
@@ -7179,15 +10822,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
@@ -7203,18 +10848,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
+- op:
+copy y
[Debug]
**About to evaluate statement**: [
@@ -7230,15 +10901,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> 0: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> 0: i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
@@ -7254,18 +10927,68 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> 0: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> 0: i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> 0: i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
+- op:
+move var@7
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> 0: i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
+}
+
+
+- op:
+move var@8
[Debug]
**About to evaluate statement**: [
@@ -7280,15 +11003,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> true ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> true ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
@@ -7304,19 +11029,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> true ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> true ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> true ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@5);
@@ -7329,15 +11080,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> false ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> false ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
@@ -7353,19 +11106,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> false ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> false ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> false ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
return
@@ -7377,15 +11156,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> 0: i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> ⊥ : i32 ;
+ None -> 0: i32 ;
}
@@ -7413,14 +11194,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -7436,14 +11217,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -7469,14 +11250,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -7492,14 +11273,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -7509,52 +11290,103 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- type_params: [test1::List<i32>]
- args: [move var@3]
- dest: var@2
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+}
+
+
+- op:
+move var@3
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+}
+
+# Frame 1:
+{
+ Some (@return) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@1) -> test1::List::Nil ;
+}
+
+
+- op:
+move var@1
+
[Debug] ctx_pop_frame:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
# Frame 1:
{
- @return -> @Box(test1::List::Nil) ;
- var@1 -> ⊥ : test1::List<i32> ;
+ Some (@return) -> @Box(test1::List::Nil) ;
+ Some (var@1) -> ⊥ : test1::List<i32> ;
}
-[Debug] ctx_pop_frame: locals to drop: [1]
-[Debug] drop_value: place: var@1
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
# Frame 1:
{
- @return -> @Box(test1::List::Nil) ;
- var@1 -> ⊥ : test1::List<i32> ;
+ Some (@return) -> @Box(test1::List::Nil) ;
+ Some (var@1) -> ⊥ : test1::List<i32> ;
}
+
+- op:
+move @return
+
[Debug]
**About to evaluate statement**: [
(l as test1::List::Cons).0 := 0: i32;
@@ -7575,14 +11407,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7598,18 +11432,43 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+0: i32
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (1, (Some 0))), 0))
ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
@@ -7632,14 +11491,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7655,17 +11516,42 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+- op:
+move var@2
[Debug]
**About to evaluate statement**: [
@@ -7685,14 +11571,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7708,14 +11596,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7737,14 +11627,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7760,14 +11652,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7788,14 +11682,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7811,18 +11707,43 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+copy var@7
+
[Debug]
**About to evaluate statement**: [
var@5 := move is_cons<i32>(move var@6);
@@ -7838,14 +11759,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⌊shared@1⌋ ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⌊shared@1⌋ ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -7861,18 +11784,43 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⌊shared@1⌋ ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⌊shared@1⌋ ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⌊shared@1⌋ ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@2 := discriminant(*(l));
@@ -7896,21 +11844,23 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@1⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -7926,21 +11876,23 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@1⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -7967,21 +11919,23 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@1⌋ ;
- var@2 -> 0: isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> 0: isize ;
}
@@ -8007,24 +11961,56 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> 0: isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@1⌋ ;
- var@2 -> 0: isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> 0: isize ;
}
+- op:
+move var@2
[Debug]
**About to evaluate statement**: [
@@ -8037,24 +12023,56 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@1⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
+- op:
+true
[Debug]
**About to evaluate statement**: [
@@ -8067,21 +12085,23 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> true ;
- l -> ⌊shared@1⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> true ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -8092,49 +12112,55 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> true ;
- l -> ⌊shared@1⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> true ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
-[Debug] ctx_pop_frame: locals to drop: [2,1]
-[Debug] drop_value: place: var@2
-[Debug] drop_value: place: l
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> true ;
- l -> ⊥ : &'_ (test1::List<i32>) ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> true ;
+ Some (l) -> ⌊shared@1⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
var@4 := ¬ move var@5;
@@ -8149,14 +12175,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> true ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> true ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
}
@@ -8172,18 +12203,49 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> true ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> true ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> true ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@4);
@@ -8197,14 +12259,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> false ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
}
@@ -8220,18 +12287,49 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> false ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
+}
+
+
+- op:
+move var@4
+
[Debug]
**About to evaluate statement**: [
drop(l);
@@ -8244,14 +12342,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
}
@@ -8267,19 +12370,122 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
}
[Debug] drop_value: place: l
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
+ None -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: ⌊shared@0⌋
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
+ None -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+}
+
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⌊shared@1⌋ ;
+ None -> ⊥ : isize ;
+ None -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: ⌊shared@1⌋
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : isize ;
+ None -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); }) ;
+}
+
+
[Debug]
**About to evaluate statement**: [
return
@@ -8291,14 +12497,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> ⊥ : isize ;
}
@@ -8329,17 +12540,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -8355,17 +12566,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -8394,17 +12605,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -8420,17 +12631,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -8440,58 +12651,115 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- type_params: [test1::List<i32>]
- args: [move var@3]
- dest: var@2
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@3
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (@return) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@1) -> test1::List::Nil ;
+}
+
+
+- op:
+move var@1
+
[Debug] ctx_pop_frame:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
# Frame 1:
{
- @return -> @Box(test1::List::Nil) ;
- var@1 -> ⊥ : test1::List<i32> ;
+ Some (@return) -> @Box(test1::List::Nil) ;
+ Some (var@1) -> ⊥ : test1::List<i32> ;
}
-[Debug] ctx_pop_frame: locals to drop: [1]
-[Debug] drop_value: place: var@1
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
# Frame 1:
{
- @return -> @Box(test1::List::Nil) ;
- var@1 -> ⊥ : test1::List<i32> ;
+ Some (@return) -> @Box(test1::List::Nil) ;
+ Some (var@1) -> ⊥ : test1::List<i32> ;
}
+
+- op:
+move @return
+
[Debug]
**About to evaluate statement**: [
(l as test1::List::Cons).0 := 0: i32;
@@ -8515,17 +12783,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -8541,21 +12811,49 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+0: i32
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (1, (Some 0))), 0))
ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
@@ -8581,17 +12879,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -8607,21 +12907,49 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> @Box(test1::List::Nil) ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> @Box(test1::List::Nil) ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
set_discriminant(l, 0);
@@ -8643,17 +12971,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -8669,17 +12999,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -8704,17 +13036,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -8730,20 +13064,48 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+- op:
+move l
[Debug]
**About to evaluate statement**: [
@@ -8764,17 +13126,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
@@ -8790,21 +13154,49 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
var@8 := false;
@@ -8837,32 +13229,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -8878,35 +13272,78 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+- op:
+false
[Debug]
**About to evaluate statement**: [
@@ -8939,32 +13376,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> ⊥ : bool ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -8980,36 +13419,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> ⊥ : bool ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+false
+
[Debug]
**About to evaluate statement**: [
var@7 := true;
@@ -9040,32 +13522,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9081,36 +13565,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+true
+
[Debug]
**About to evaluate statement**: [
var@8 := true;
@@ -9140,32 +13667,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9181,35 +13710,78 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+- op:
+true
[Debug]
**About to evaluate statement**: [
@@ -9239,32 +13811,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9280,32 +13854,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9337,35 +13913,78 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> 0: isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> 0: isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> 0: isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+- op:
+move var@2
[Debug]
**About to evaluate statement**: [
@@ -9387,32 +14006,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9428,36 +14049,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+false
+
[Debug]
**About to evaluate statement**: [
hd := move (l as test1::List::Cons).0;
@@ -9477,32 +14141,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9518,36 +14184,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move (l as test1::List::Cons).0
+
[Debug]
**About to evaluate statement**: [
var@7 := false;
@@ -9566,32 +14275,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> 0: i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9607,36 +14318,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> 0: i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+- op:
+false
+
[Debug]
**About to evaluate statement**: [
tl := move (l as test1::List::Cons).1;
@@ -9654,32 +14408,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> 0: i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9695,36 +14451,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
- var@2 -> ⊥ : isize ;
- hd -> 0: i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = @Box(test1::List::Nil); } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move (l as test1::List::Cons).1
+
[Debug]
**About to evaluate statement**: [
var@5 := move hd;
@@ -9741,32 +14540,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> 0: i32 ;
- tl -> @Box(test1::List::Nil) ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> @Box(test1::List::Nil) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9782,35 +14583,78 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> @Box(test1::List::Nil) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> 0: i32 ;
- tl -> @Box(test1::List::Nil) ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> @Box(test1::List::Nil) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+- op:
+move hd
[Debug]
**About to evaluate statement**: [
@@ -9827,32 +14671,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(test1::List::Nil) ;
- var@5 -> 0: i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(test1::List::Nil) ;
+ Some (var@5) -> 0: i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9868,36 +14714,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(test1::List::Nil) ;
- var@5 -> 0: i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(test1::List::Nil) ;
+ Some (var@5) -> 0: i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(test1::List::Nil) ;
+ Some (var@5) -> 0: i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move deref_box(tl)
+
[Debug]
**About to evaluate statement**: [
(var@0).0 := move var@5;
@@ -9912,32 +14801,34 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(⊥ : test1::List<i32>) ;
- var@5 -> 0: i32 ;
- var@6 -> test1::List::Nil ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> 0: i32 ;
+ Some (var@6) -> test1::List::Nil ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -9953,36 +14844,79 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> ⊥ : (i32, test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(⊥ : test1::List<i32>) ;
- var@5 -> 0: i32 ;
- var@6 -> test1::List::Nil ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> 0: i32 ;
+ Some (var@6) -> test1::List::Nil ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> 0: i32 ;
+ Some (var@6) -> test1::List::Nil ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move var@5
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjTuple 2), 0))
ty: (Types.Adt (Types.Tuple, [],
@@ -10002,32 +14936,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> (0: i32, ⊥ : test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(⊥ : test1::List<i32>) ;
- var@5 -> ⊥ : i32 ;
- var@6 -> test1::List::Nil ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> test1::List::Nil ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -10043,36 +14979,79 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> (0: i32, ⊥ : test1::List<i32>) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(⊥ : test1::List<i32>) ;
- var@5 -> ⊥ : i32 ;
- var@6 -> test1::List::Nil ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> test1::List::Nil ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> test1::List::Nil ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@9 := move alloc::alloc::box_free<test1::List<i32>>(move tl);
@@ -10085,32 +15064,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> (0: i32, test1::List::Nil) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(⊥ : test1::List<i32>) ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (0: i32, test1::List::Nil) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -10126,32 +15107,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> (0: i32, test1::List::Nil) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> @Box(⊥ : test1::List<i32>) ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (0: i32, test1::List::Nil) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> @Box(⊥ : test1::List<i32>) ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -10173,32 +15156,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> (0: i32, test1::List::Nil) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (0: i32, test1::List::Nil) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -10209,79 +15194,77 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> (0: i32, test1::List::Nil) ;
- l -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (0: i32, test1::List::Nil) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> () ;
+ Some (var@10) -> ⊥ : isize ;
}
-[Debug] ctx_pop_frame: locals to drop: [10,9,8,7,6,5,4,3,2,1]
-[Debug] drop_value: place: var@10
-[Debug] drop_value: place: var@9
-[Debug] drop_value: place: var@8
-[Debug] drop_value: place: var@7
-[Debug] drop_value: place: var@6
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: tl
-[Debug] drop_value: place: hd
-[Debug] drop_value: place: var@2
-[Debug] drop_value: place: l
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
}
# Frame 1:
{
- var@0 -> (0: i32, test1::List::Nil) ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@5 -> ⊥ : i32 ;
- var@6 -> ⊥ : test1::List<i32> ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (0: i32, test1::List::Nil) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@5) -> ⊥ : i32 ;
+ Some (var@6) -> ⊥ : test1::List<i32> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> () ;
+ Some (var@10) -> ⊥ : isize ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
hd := copy (var@6).0;
@@ -10300,17 +15283,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (0: i32, test1::List::Nil) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (0: i32, test1::List::Nil) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10326,21 +15322,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (0: i32, test1::List::Nil) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (0: i32, test1::List::Nil) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (0: i32, test1::List::Nil) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
+}
+
+
+- op:
+copy (var@6).0
+
[Debug]
**About to evaluate statement**: [
tl := move (var@6).1;
@@ -10358,17 +15404,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (0: i32, test1::List::Nil) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (0: i32, test1::List::Nil) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10384,20 +15443,70 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (0: i32, test1::List::Nil) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (0: i32, test1::List::Nil) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (0: i32, test1::List::Nil) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
+- op:
+move (var@6).1
[Debug]
**About to evaluate statement**: [
@@ -10415,17 +15524,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10441,21 +15563,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
+}
+
+
+- op:
+copy hd
+
[Debug]
**About to evaluate statement**: [
var@9 := move var@10 == 0: i32;
@@ -10471,17 +15643,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> 0: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> 0: i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10497,21 +15682,108 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> 0: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> 0: i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> 0: i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
+}
+
+
+- op:
+move var@10
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
var@8 := ¬ move var@9;
@@ -10526,17 +15798,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> true ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10552,21 +15837,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> true ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
+}
+
+
+- op:
+move var@9
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@8);
@@ -10580,17 +15915,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> false ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10606,20 +15954,70 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> false ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
+- op:
+move var@8
[Debug]
**About to evaluate statement**: [
@@ -10633,17 +16031,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10659,17 +16070,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> test1::List::Nil ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> test1::List::Nil ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10686,17 +16110,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> 0: i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (0: i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> 0: i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (0: i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> ⊥ : (i32, test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = ⊥ : i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ None -> ⊥ : isize ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ None -> ⊥ : i32 ;
+ None -> ⊥ : test1::List<i32> ;
+ None -> false ;
+ None -> false ;
+ None -> () ;
+ None -> ⊥ : isize ;
}
@@ -10734,25 +16171,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -10768,28 +16205,60 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -10822,25 +16291,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -10856,29 +16325,61 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
var@5 := &mut x;
@@ -10909,25 +16410,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -10943,25 +16444,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -10995,25 +16496,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (0: i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (0: i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -11029,25 +16530,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (0: i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (0: i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -11080,25 +16581,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -11114,25 +16615,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -11164,25 +16665,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (0: i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -11198,25 +16699,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (0: i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -11247,25 +16748,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⌊inactivated_mut@3⌋ ;
- var@7 -> &mut@2 (@shared_loan({3}, 0: i32)) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⌊inactivated_mut@3⌋ ;
+ Some (var@7) -> &mut@2 (@shared_loan({3}, 0: i32)) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -11281,37 +16782,129 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⌊inactivated_mut@3⌋ ;
- var@7 -> &mut@2 (@shared_loan({3}, 0: i32)) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⌊inactivated_mut@3⌋ ;
+ Some (var@7) -> &mut@2 (@shared_loan({3}, 0: i32)) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Concrete (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
+0: i32
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Concrete (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
+0: i32
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> &mut@1 (0: i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> &mut@3 (0: i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+true
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> &mut@1 (0: i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> &mut@3 (0: i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> &mut@3 (0: i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@4 := copy b;
@@ -11330,34 +16923,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (i32) ;
- b -> true ;
- x -> &mut@1 (0: i32) ;
- y -> &mut@3 (0: i32) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -11373,37 +16966,78 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (i32) ;
- b -> true ;
- x -> &mut@1 (0: i32) ;
- y -> &mut@3 (0: i32) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> ⊥ : bool ;
}
+- op:
+copy b
[Debug]
**About to evaluate statement**: [
@@ -11422,34 +17056,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (i32) ;
- b -> true ;
- x -> &mut@1 (0: i32) ;
- y -> &mut@3 (0: i32) ;
- var@4 -> true ;
+ Some (var@0) -> ⊥ : &'_ mut (i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> true ;
}
@@ -11470,37 +17104,78 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> true ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (i32) ;
- b -> true ;
- x -> &mut@1 (0: i32) ;
- y -> &mut@3 (0: i32) ;
- var@4 -> true ;
+ Some (var@0) -> ⊥ : &'_ mut (i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> true ;
}
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -11513,34 +17188,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (i32) ;
- b -> true ;
- x -> &mut@1 (0: i32) ;
- y -> &mut@3 (0: i32) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (0: i32) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -11556,34 +17231,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (0: i32) ;
- b -> true ;
- x -> &mut@1 (⌊mut@4⌋) ;
- y -> &mut@3 (0: i32) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> &mut@4 (0: i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (⌊mut@4⌋) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -11594,77 +17269,77 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (0: i32) ;
- b -> true ;
- x -> &mut@1 (⌊mut@4⌋) ;
- y -> &mut@3 (0: i32) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> &mut@4 (0: i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (⌊mut@4⌋) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> ⊥ : bool ;
}
-[Debug] ctx_pop_frame: locals to drop: [4,3,2,1]
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: y
-[Debug] drop_value: place: x
-[Debug] drop_value: place: b
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (0: i32) ;
- b -> ⊥ : bool ;
- x -> ⊥ : &'_ mut (i32) ;
- y -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> &mut@4 (0: i32) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@1 (⌊mut@4⌋) ;
+ Some (y) -> &mut@3 (0: i32) ;
+ Some (var@4) -> ⊥ : bool ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
var@8 := copy *(z);
@@ -11690,25 +17365,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (0: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (0: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -11724,28 +17404,70 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (0: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (0: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (0: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+- op:
+copy *(z)
[Debug]
**About to evaluate statement**: [
@@ -11771,25 +17493,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (0: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (0: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -11805,29 +17532,108 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (0: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (0: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (0: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+copy var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (0: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@12 := copy *(z);
@@ -11851,25 +17657,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -11885,29 +17696,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+copy *(z)
+
[Debug]
**About to evaluate statement**: [
var@11 := move var@12 == 1: i32;
@@ -11930,25 +17783,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 1: i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 1: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -11964,29 +17822,108 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 1: i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 1: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 1: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+move var@12
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@10 := ¬ move var@11;
@@ -12008,25 +17945,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> true ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -12042,29 +17984,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> true ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+move var@11
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@10);
@@ -12085,25 +18069,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> false ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -12119,29 +18108,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> false ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+move var@10
+
[Debug]
**About to evaluate statement**: [
var@15 := copy x;
@@ -12161,25 +18192,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -12195,29 +18231,454 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (1: i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@4⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 1))
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 4))
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (1: i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] give_back:
+- bid: 4
+- content: &mut@4 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] give_back_value:
+- bid: 4
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (⌊mut@4⌋) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> &mut@1 (1: i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (1: i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@14 := move var@15 == 1: i32;
@@ -12236,25 +18697,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> 1: i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 1: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -12270,29 +18736,108 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> 1: i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 1: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 1: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+move var@15
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@13 := ¬ move var@14;
@@ -12310,25 +18855,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> true ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> true ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -12344,29 +18894,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> true ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> true ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> true ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+move var@14
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@13);
@@ -12383,25 +18975,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> false ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> false ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -12417,28 +19014,70 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> false ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> false ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> false ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+- op:
+move var@13
[Debug]
**About to evaluate statement**: [
@@ -12455,25 +19094,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
@@ -12489,28 +19133,314 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
}
+- op:
+copy y
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 3))
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> &mut@3 (0: i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (0: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: 0: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (0: i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+[Debug] give_back:
+- bid: 2
+- content: &mut@2 (0: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+[Debug] give_back_value:
+- bid: 2
+- value: 0: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -12526,25 +19456,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> 0: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 0: i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
}
@@ -12560,28 +19495,107 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> 0: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 0: i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 0: i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
}
+- op:
+move var@18
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -12596,25 +19610,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> true ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> true ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
}
@@ -12630,29 +19649,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> true ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> true ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> true ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+move var@17
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@16);
@@ -12665,25 +19726,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> false ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> false ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
}
@@ -12699,29 +19765,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> false ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> false ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> false ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
+}
+
+
+- op:
+move var@16
+
[Debug]
**About to evaluate statement**: [
return
@@ -12733,25 +19841,30 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> 0: i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> 0: i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> true ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+ None -> ⊥ : bool ;
}
@@ -12781,17 +19894,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -12807,21 +19920,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+- op:
+0: u32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -12845,17 +19982,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -12871,17 +20008,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -12908,17 +20045,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -12934,21 +20071,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+- op:
+move px
+
[Debug]
**About to evaluate statement**: [
(p).0 := move var@4;
@@ -12970,17 +20131,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> &mut@0 (0: u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> &mut@0 (0: u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -12996,20 +20157,44 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> &mut@0 (0: u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> &mut@0 (0: u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> &mut@0 (0: u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+- op:
+move var@4
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjTuple 2), 0))
@@ -13037,17 +20222,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), ⊥ : u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), ⊥ : u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -13063,21 +20248,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), ⊥ : u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), ⊥ : u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), ⊥ : u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+- op:
+1: u32
+
[Debug]
**About to evaluate statement**: [
pp0 := &mut p;
@@ -13097,17 +20306,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), 1: u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), 1: u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -13123,17 +20332,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), 1: u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), 1: u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -13156,17 +20365,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -13182,17 +20391,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -13214,17 +20423,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -13240,48 +20449,47 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Adt
- { Values.variant_id = <opaque>;
- field_values =
- [{ Values.value =
- (Values.Borrow
- (Values.MutBorrow (<opaque>,
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 0; int_ty = Types.U32 }));
- ty = (Types.Integer Types.U32) }
- )));
- ty =
- (Types.Ref (Types.Erased, (Types.Integer Types.U32), Types.Mut)) };
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 1; int_ty = Types.U32 }));
- ty = (Types.Integer Types.U32) }
- ]
- });
- ty =
- (Types.Adt (Types.Tuple, [],
- [(Types.Ref (Types.Erased, (Types.Integer Types.U32), Types.Mut));
- (Types.Integer Types.U32)]
- ))
- }
+(&mut@0 (0: u32), 1: u32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> &mut@2 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
var@2 := &mut *(x);
@@ -13295,24 +20503,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- x -> &mut@2 ((&mut@0 (0: u32), 1: u32)) ;
- var@2 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (x) -> &mut@2 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@2) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
}
@@ -13328,24 +20536,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- x -> &mut@2 ((&mut@0 (0: u32), 1: u32)) ;
- var@2 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (x) -> &mut@2 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@2) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
}
@@ -13362,24 +20570,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 ((&mut@0 (0: u32), 1: u32)) ;
}
@@ -13395,24 +20603,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 ((&mut@0 (0: u32), 1: u32)) ;
}
@@ -13428,24 +20636,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
# Frame 1:
{
- var@0 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13456,55 +20664,57 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
# Frame 1:
{
- var@0 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
-[Debug] ctx_pop_frame: locals to drop: [2,1]
-[Debug] drop_value: place: var@2
-[Debug] drop_value: place: x
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
# Frame 1:
{
- var@0 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- x -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@2 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@0) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
y := 2: u32;
@@ -13521,17 +20731,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13547,21 +20760,51 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+2: u32
+
[Debug]
**About to evaluate statement**: [
var@10 := &mut y;
@@ -13577,17 +20820,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> 2: u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> 2: u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13603,17 +20849,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> 2: u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> 2: u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13632,17 +20881,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@5⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@5 (2: u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (2: u32) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13658,17 +20910,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@5⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@5 (2: u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (2: u32) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13686,17 +20941,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@5⌋ ;
- var@9 -> &mut@6 (2: u32) ;
- var@10 -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> &mut@6 (2: u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13712,20 +20970,131 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@5⌋ ;
- var@9 -> &mut@6 (2: u32) ;
- var@10 -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> &mut@6 (2: u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> &mut@6 (2: u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+move var@9
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((⊥ : &'_ mut (u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> &mut@6 (2: u32) ;
+ None -> &mut@0 (0: u32) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (0: u32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((⊥ : &'_ mut (u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> &mut@6 (2: u32) ;
+ None -> ⊥ : &'_ mut (u32) ;
}
+[Debug] give_back_value:
+- bid: 0
+- value: 0: u32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((⊥ : &'_ mut (u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> &mut@6 (2: u32) ;
+ None -> ⊥ : &'_ mut (u32) ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -13739,17 +21108,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@6 (2: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@5⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@6 (2: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13765,21 +21137,51 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@6 (2: u32), 1: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@5⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@6 (2: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@6 (2: u32), 1: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+3: u32
+
[Debug]
**About to evaluate statement**: [
return
@@ -13791,17 +21193,20 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@4⌋) ;
- pp1 -> &mut@4 ((&mut@6 (2: u32), 3: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@5⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@4 ((&mut@6 (2: u32), 3: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -13819,7 +21224,7 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : char ;
+ Some (var@0) -> ⊥ : char ;
}
@@ -13835,11 +21240,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : char ;
+ Some (var@0) -> ⊥ : char ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : char ;
+}
+
+
+- op:
+a
+
[Debug]
**About to evaluate statement**: [
return
@@ -13851,7 +21270,7 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> a ;
+ Some (var@0) -> a ;
}
@@ -13898,31 +21317,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -13938,34 +21357,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -13995,45 +21452,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14049,48 +21506,100 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -14119,45 +21628,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14173,48 +21682,100 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -14242,45 +21803,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14309,45 +21870,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14374,45 +21935,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14428,49 +21989,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
var@5 := copy max;
@@ -14492,45 +22105,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14546,49 +22159,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 < move var@5;
@@ -14609,45 +22274,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14663,49 +22328,153 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
if (move var@3) {
@@ -14725,48 +22494,100 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -14782,45 +22603,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14836,49 +22657,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
s := copy s + copy var@6;
@@ -14892,45 +22765,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -14946,49 +22819,153 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@6
+
[Debug]
**About to evaluate statement**: [
i := copy i + 1: u32;
@@ -15001,45 +22978,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15055,48 +23032,152 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -15109,45 +23190,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15174,45 +23255,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15228,49 +23309,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
var@5 := copy max;
@@ -15292,45 +23425,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15346,48 +23479,100 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -15409,45 +23594,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15463,48 +23648,152 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -15525,48 +23814,100 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -15582,45 +23923,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15636,49 +23977,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
s := copy s + copy var@6;
@@ -15692,45 +24085,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15746,49 +24139,153 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@6
+
[Debug]
**About to evaluate statement**: [
i := copy i + 1: u32;
@@ -15801,45 +24298,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15855,49 +24352,153 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
+
[Debug]
**About to evaluate statement**: [
continue 0
@@ -15909,45 +24510,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -15974,45 +24575,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -16028,49 +24629,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
var@5 := copy max;
@@ -16092,45 +24745,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -16146,49 +24799,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 < move var@5;
@@ -16209,45 +24914,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -16263,48 +24968,152 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -16325,49 +25134,101 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> false ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
break 0
@@ -16379,45 +25240,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -16434,45 +25295,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -16488,49 +25349,153 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
+
[Debug]
**About to evaluate statement**: [
return
@@ -16542,45 +25507,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
# Frame 1:
{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -16591,104 +25556,99 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-[Debug] ctx_pop_frame: locals to drop: [9,8,7,6,5,4,3,2,1]
-[Debug] drop_value: place: var@9
-[Debug] drop_value: place: var@8
-[Debug] drop_value: place: var@7
-[Debug] drop_value: place: var@6
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: var@3
-[Debug] drop_value: place: i
-[Debug] drop_value: place: max
-[Debug] ctx_pop_frame: after dropping local variables:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> ⊥ : u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : (u32, bool) ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> ⊥ : (u32, bool) ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move s
+
[Debug]
**About to evaluate statement**: [
var@4 := copy x;
@@ -16729,31 +25689,41 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -16769,34 +25739,92 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -16837,31 +25865,41 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -16877,34 +25915,140 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -16944,31 +26088,41 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -16984,34 +26138,92 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -17050,31 +26262,41 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> false ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> false ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -17090,34 +26312,92 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> false ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> false ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> false ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@2
[Debug]
**About to evaluate statement**: [
@@ -17155,31 +26435,41 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -17195,34 +26485,92 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -17259,45 +26607,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -17313,49 +26671,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
+
[Debug]
**About to evaluate statement**: [
s := 0: u32;
@@ -17390,45 +26820,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -17444,49 +26884,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
+
[Debug]
**About to evaluate statement**: [
loop {
@@ -17520,45 +27032,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -17595,45 +27117,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -17668,45 +27200,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -17722,49 +27264,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
var@5 := copy max;
@@ -17794,45 +27408,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -17848,49 +27472,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 < move var@5;
@@ -17919,45 +27615,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -17973,48 +27679,182 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -18043,49 +27883,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
var@6 := copy i;
@@ -18108,45 +28020,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18162,49 +28084,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
switch (move var@6) {
@@ -18226,49 +28220,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 0: u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 0: u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@7 := copy i;
@@ -18283,45 +28349,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18337,49 +28413,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
s := copy s + copy var@7;
@@ -18393,45 +28541,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18447,48 +28605,182 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@7
[Debug]
**About to evaluate statement**: [
@@ -18502,45 +28794,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18556,48 +28858,182 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -18610,45 +29046,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18683,45 +29129,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18737,49 +29193,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
var@5 := copy max;
@@ -18809,45 +29337,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18863,49 +29401,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 < move var@5;
@@ -18934,45 +29544,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -18988,48 +29608,182 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -19058,49 +29812,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
var@6 := copy i;
@@ -19123,45 +29949,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -19177,49 +30013,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
switch (move var@6) {
@@ -19241,49 +30149,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> 1: u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 1: u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@7 := copy i;
@@ -19298,45 +30278,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -19352,49 +30342,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
s := copy s + copy var@7;
@@ -19408,45 +30470,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -19462,48 +30534,182 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@7
[Debug]
**About to evaluate statement**: [
@@ -19517,45 +30723,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -19571,48 +30787,182 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -19625,45 +30975,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -19698,45 +31058,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -19752,49 +31122,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
[Debug]
**About to evaluate statement**: [
var@5 := copy max;
@@ -19824,45 +31266,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -19878,49 +31330,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 < move var@5;
@@ -19949,45 +31473,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -20003,48 +31537,182 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -20073,49 +31741,121 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> false ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
break 0
@@ -20127,45 +31867,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
# Frame 1:
{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -20181,45 +31931,55 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
}
@@ -20230,103 +31990,118 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> 1: u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
-
-[Debug] ctx_pop_frame: locals to drop: [9,8,7,6,5,4,3,2,1]
-[Debug] drop_value: place: var@9
-[Debug] drop_value: place: var@8
-[Debug] drop_value: place: var@7
-[Debug] drop_value: place: var@6
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: var@3
-[Debug] drop_value: place: i
-[Debug] drop_value: place: max
-[Debug] ctx_pop_frame: after dropping local variables:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> ⊥ : u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : (u32, bool) ;
- var@9 -> ⊥ : (u32, bool) ;
-}
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> ⊥ : (u32, bool) ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move s
[Debug]
**About to evaluate statement**: [
@@ -20363,31 +32138,51 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -20403,34 +32198,112 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -20466,31 +32339,51 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -20506,34 +32399,170 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -20568,31 +32597,51 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -20608,34 +32657,112 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -20669,31 +32796,51 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> false ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -20709,34 +32856,112 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> false ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -20769,31 +32994,51 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -20809,34 +33054,112 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -20892,55 +33215,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -20956,58 +33299,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -21062,55 +33507,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -21126,58 +33591,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -21231,55 +33798,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -21295,58 +33882,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -21399,55 +34088,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -21502,55 +34211,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -21603,55 +34332,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -21667,58 +34416,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -21767,55 +34618,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -21831,58 +34702,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -21930,55 +34903,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -21994,58 +34987,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -22092,58 +35269,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -22185,55 +35464,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -22273,55 +35572,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -22359,55 +35678,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -22423,58 +35762,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -22508,55 +35949,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -22572,58 +36033,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -22656,55 +36219,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -22720,58 +36303,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -22803,58 +36570,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -22881,55 +36750,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -22945,58 +36834,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -23022,55 +37013,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23086,58 +37097,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -23162,55 +37275,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23226,58 +37359,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@12
[Debug]
**About to evaluate statement**: [
@@ -23301,55 +37618,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23372,58 +37709,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -23436,55 +37875,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23503,55 +37962,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23567,58 +38046,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -23633,55 +38214,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23697,58 +38298,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@14
[Debug]
**About to evaluate statement**: [
@@ -23762,55 +38547,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23826,58 +38631,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -23890,55 +38879,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -23991,55 +39000,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -24055,58 +39084,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -24155,55 +39286,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -24219,58 +39370,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -24318,55 +39571,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -24382,58 +39655,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -24480,58 +39937,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -24573,55 +40132,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -24661,55 +40240,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -24747,55 +40346,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -24811,58 +40430,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -24896,55 +40617,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -24960,58 +40701,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -25044,55 +40887,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -25108,58 +40971,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -25191,58 +41238,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -25269,55 +41418,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -25333,58 +41502,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -25410,55 +41681,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -25474,58 +41765,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -25550,55 +41943,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -25614,58 +42027,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@12
[Debug]
**About to evaluate statement**: [
@@ -25689,55 +42286,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -25760,58 +42377,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -25824,55 +42543,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -25891,55 +42630,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -25955,58 +42714,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -26021,55 +42882,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -26085,58 +42966,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@14
[Debug]
**About to evaluate statement**: [
@@ -26150,55 +43215,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -26214,58 +43299,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -26278,55 +43547,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -26379,55 +43668,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -26443,58 +43752,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -26543,55 +43954,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -26607,58 +44038,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -26706,55 +44239,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -26770,58 +44323,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -26868,58 +44605,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -26961,55 +44800,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27049,55 +44908,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27135,55 +45014,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27199,58 +45098,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -27284,55 +45285,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27348,58 +45369,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -27432,55 +45555,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27496,58 +45639,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -27579,58 +45906,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> false ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -27643,55 +46072,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27711,55 +46160,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27775,58 +46244,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -27842,55 +46413,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -27906,58 +46497,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -27972,55 +46665,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -28036,58 +46749,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@17
[Debug]
**About to evaluate statement**: [
@@ -28101,55 +46998,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -28165,58 +47082,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -28229,55 +47330,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -28330,55 +47451,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -28394,58 +47535,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -28494,55 +47737,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -28558,58 +47821,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -28657,55 +48022,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -28721,58 +48106,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -28819,58 +48388,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -28912,55 +48583,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29000,55 +48691,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29086,55 +48797,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29150,58 +48881,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -29235,55 +49068,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29299,58 +49152,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -29383,55 +49338,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29447,58 +49422,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -29530,58 +49689,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -29608,55 +49869,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29672,58 +49953,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 0: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 0: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -29749,55 +50132,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29813,58 +50216,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -29889,55 +50394,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -29953,58 +50478,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@12
[Debug]
**About to evaluate statement**: [
@@ -30028,55 +50737,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30099,58 +50828,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -30163,55 +50994,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30230,55 +51081,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30294,58 +51165,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 0: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 0: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -30360,55 +51333,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30424,58 +51417,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@14
[Debug]
**About to evaluate statement**: [
@@ -30489,55 +51666,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30553,58 +51750,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -30617,55 +51998,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30718,55 +52119,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30782,58 +52203,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -30882,55 +52405,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -30946,58 +52489,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -31045,55 +52690,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -31109,58 +52774,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -31207,58 +53056,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -31300,55 +53251,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -31388,55 +53359,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -31474,55 +53465,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -31538,58 +53549,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -31623,55 +53736,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -31687,58 +53820,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -31771,55 +54006,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -31835,58 +54090,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -31918,58 +54357,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -31996,55 +54537,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32060,58 +54621,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -32137,55 +54800,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32201,58 +54884,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -32277,55 +55062,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32341,58 +55146,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@12
[Debug]
**About to evaluate statement**: [
@@ -32416,55 +55405,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 2: u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 2: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32487,58 +55496,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 2: u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 2: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 2: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -32551,55 +55662,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32618,55 +55749,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32682,58 +55833,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -32748,55 +56001,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32812,58 +56085,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@14
[Debug]
**About to evaluate statement**: [
@@ -32877,55 +56334,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -32941,58 +56418,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -33005,55 +56666,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -33106,55 +56787,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -33170,58 +56871,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -33270,55 +57073,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -33334,58 +57157,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -33433,55 +57358,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -33497,58 +57442,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -33595,58 +57724,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -33688,55 +57919,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -33776,55 +58027,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -33862,55 +58133,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -33926,58 +58217,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -34011,55 +58404,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -34075,58 +58488,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -34159,55 +58674,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -34223,58 +58758,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -34306,58 +59025,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> false ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -34370,55 +59191,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -34438,55 +59279,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -34502,58 +59363,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -34569,55 +59532,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -34633,58 +59616,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 0: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 0: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -34699,55 +59784,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -34763,58 +59868,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@17
[Debug]
**About to evaluate statement**: [
@@ -34828,55 +60117,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -34892,58 +60201,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -34956,55 +60449,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -35057,55 +60570,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -35121,58 +60654,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -35221,55 +60856,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -35285,58 +60940,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -35384,55 +61141,75 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -35448,58 +61225,242 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -35546,58 +61507,160 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> false ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -35610,119 +61673,159 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
-
-[Debug]
-**About to evaluate statement**: [
- return
-]
-
-**Context**:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -35733,133 +61836,158 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 1: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> 1: u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-[Debug] ctx_pop_frame: locals to drop: [19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1]
-[Debug] drop_value: place: var@19
-[Debug] drop_value: place: var@18
-[Debug] drop_value: place: var@17
-[Debug] drop_value: place: var@16
-[Debug] drop_value: place: var@15
-[Debug] drop_value: place: var@14
-[Debug] drop_value: place: var@13
-[Debug] drop_value: place: var@12
-[Debug] drop_value: place: var@11
-[Debug] drop_value: place: var@10
-[Debug] drop_value: place: var@9
-[Debug] drop_value: place: var@8
-[Debug] drop_value: place: var@7
-[Debug] drop_value: place: var@6
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: j
-[Debug] drop_value: place: i
-[Debug] drop_value: place: max
-[Debug] ctx_pop_frame: after dropping local variables:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 3: u32 ;
- max -> ⊥ : u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 3: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 1: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> 1: u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move s
[Debug]
**About to evaluate statement**: [
@@ -35891,31 +62019,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -35931,34 +62099,152 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -35989,31 +62275,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 3: u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 3: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -36029,34 +62355,230 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 3: u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 3: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 3: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@12
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+3: u32
[Debug]
**About to evaluate statement**: [
@@ -36086,31 +62608,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> true ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -36126,34 +62688,152 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> true ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@11
[Debug]
**About to evaluate statement**: [
@@ -36182,31 +62862,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> false ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -36222,34 +62942,152 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> false ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> false ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -36277,31 +63115,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -36317,34 +63195,152 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+20: u32
[Debug]
**About to evaluate statement**: [
@@ -36400,55 +63396,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 20: u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -36464,58 +63500,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 20: u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -36570,55 +63748,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -36634,58 +63852,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -36739,55 +64099,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -36803,58 +64203,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -36907,55 +64449,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37010,55 +64592,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37111,55 +64733,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37175,58 +64837,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -37275,55 +65079,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37339,58 +65183,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -37438,55 +65424,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 20: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 20: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37502,58 +65528,302 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 20: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 20: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 20: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 20: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -37600,58 +65870,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -37693,55 +66105,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37781,55 +66233,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37867,55 +66359,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -37931,58 +66463,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -38016,55 +66690,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -38080,58 +66794,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -38164,55 +67020,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 20: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 20: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -38228,58 +67124,302 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 20: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 20: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 20: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 20: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -38311,58 +67451,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -38389,55 +67671,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -38453,58 +67775,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -38530,55 +67994,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -38594,58 +68098,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -38670,55 +68316,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -38734,58 +68420,302 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@12
[Debug]
**About to evaluate statement**: [
@@ -38809,55 +68739,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -38880,58 +68850,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -38944,55 +69056,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -39011,55 +69163,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -39075,58 +69267,200 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> ⊥ : u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -39141,55 +69475,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -39205,58 +69579,302 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@14
[Debug]
**About to evaluate statement**: [
@@ -39270,55 +69888,95 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -39334,58 +69992,302 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -39398,119 +70300,199 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-
-
-[Debug]
-**About to evaluate statement**: [
- return
-]
-
-**Context**:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
}
@@ -39521,133 +70503,198 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 20: u32 ;
- i -> 1: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> 1: u32 ;
- var@12 -> 0: u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> 1: u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
-
-[Debug] ctx_pop_frame: locals to drop: [19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1]
-[Debug] drop_value: place: var@19
-[Debug] drop_value: place: var@18
-[Debug] drop_value: place: var@17
-[Debug] drop_value: place: var@16
-[Debug] drop_value: place: var@15
-[Debug] drop_value: place: var@14
-[Debug] drop_value: place: var@13
-[Debug] drop_value: place: var@12
-[Debug] drop_value: place: var@11
-[Debug] drop_value: place: var@10
-[Debug] drop_value: place: var@9
-[Debug] drop_value: place: var@8
-[Debug] drop_value: place: var@7
-[Debug] drop_value: place: var@6
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: j
-[Debug] drop_value: place: i
-[Debug] drop_value: place: max
-[Debug] ctx_pop_frame: after dropping local variables:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> ⊥ : u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : u32 ;
- var@12 -> ⊥ : u32 ;
- var@13 -> ⊥ : (u32, bool) ;
- var@14 -> ⊥ : u32 ;
- var@15 -> ⊥ : (u32, bool) ;
- var@16 -> ⊥ : (u32, bool) ;
- var@17 -> ⊥ : u32 ;
- var@18 -> ⊥ : (u32, bool) ;
- var@19 -> ⊥ : (u32, bool) ;
-}
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 20: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> 1: u32 ;
+ Some (var@12) -> 0: u32 ;
+ Some (var@13) -> ⊥ : (u32, bool) ;
+ Some (var@14) -> 1: u32 ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+ Some (var@16) -> ⊥ : (u32, bool) ;
+ Some (var@17) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : (u32, bool) ;
+ Some (var@19) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move s
[Debug]
**About to evaluate statement**: [
@@ -39674,31 +70721,91 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -39714,34 +70821,192 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -39767,31 +71032,91 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> 1: u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> 1: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -39807,34 +71132,290 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> 1: u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> 1: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> 1: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@16
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -39859,31 +71440,91 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> true ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> true ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -39899,34 +71540,192 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> true ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> true ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> true ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@15
[Debug]
**About to evaluate statement**: [
@@ -39950,31 +71749,91 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> false ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> false ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -39990,34 +71849,192 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> false ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> false ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> false ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@14
[Debug]
**About to evaluate statement**: [
@@ -40040,31 +72057,91 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -40080,34 +72157,192 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -40151,51 +72386,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -40211,54 +72506,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -40301,51 +72774,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -40361,54 +72894,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -40450,51 +73161,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -40510,54 +73281,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -40598,51 +73547,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -40685,51 +73694,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -40770,51 +73839,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -40830,54 +73959,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -40914,51 +74221,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -40974,54 +74341,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -41057,51 +74602,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -41117,54 +74722,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 0: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 0: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -41199,54 +75100,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -41276,51 +75355,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -41349,51 +75488,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -41420,51 +75619,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -41480,54 +75739,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -41550,51 +75987,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -41610,54 +76107,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -41679,51 +76354,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -41739,54 +76474,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 0: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -41807,54 +76838,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -41870,51 +77079,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -41930,54 +77199,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -41992,51 +77439,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42052,54 +77559,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@10
[Debug]
**About to evaluate statement**: [
@@ -42113,51 +77916,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42173,54 +78036,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 0: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 0: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -42233,51 +78392,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42304,51 +78523,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42364,54 +78643,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -42434,51 +78891,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42494,54 +79011,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -42563,51 +79258,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42623,54 +79378,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -42691,54 +79742,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> true ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -42754,51 +79983,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42814,54 +80103,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 0: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 0: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -42876,51 +80343,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -42936,54 +80463,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@10
[Debug]
**About to evaluate statement**: [
@@ -42997,51 +80820,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43057,54 +80940,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 1: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 1: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -43117,51 +81296,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43188,51 +81427,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43248,54 +81547,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -43318,51 +81795,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43378,54 +81915,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -43447,51 +82162,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43507,54 +82282,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -43575,54 +82646,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> false ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -43635,51 +82884,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43698,51 +83007,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43758,54 +83127,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -43820,51 +83367,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -43880,54 +83487,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@13
[Debug]
**About to evaluate statement**: [
@@ -43941,51 +83844,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44001,54 +83964,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -44061,51 +84320,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44146,51 +84465,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44206,54 +84585,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -44290,51 +84847,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44350,54 +84967,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -44433,51 +85228,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44493,54 +85348,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 1: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 1: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -44575,54 +85726,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> true ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -44652,51 +85981,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44725,51 +86114,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44796,51 +86245,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44856,54 +86365,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy j
[Debug]
**About to evaluate statement**: [
@@ -44926,51 +86613,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -44986,54 +86733,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -45055,51 +86980,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45115,54 +87100,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> 2: u32 ;
- var@9 -> 2: u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 2: u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> 2: u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -45183,54 +87464,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> false ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> false ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -45243,51 +87702,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45306,51 +87825,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45366,54 +87945,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 0: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 0: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -45428,51 +88185,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45488,54 +88305,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@13
[Debug]
**About to evaluate statement**: [
@@ -45549,51 +88662,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45609,54 +88782,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -45669,51 +89138,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45754,51 +89283,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45814,54 +89403,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -45898,51 +89665,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -45958,54 +89785,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -46041,51 +90046,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -46101,54 +90166,350 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> 2: u32 ;
- var@6 -> 2: u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> 2: u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -46183,54 +90544,232 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> false ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> false ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -46243,111 +90782,231 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-
-
-[Debug]
-**About to evaluate statement**: [
- return
-]
-
-**Context**:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
}
@@ -46358,121 +91017,230 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- j -> 2: u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> 1: u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> 1: u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
-
-[Debug] ctx_pop_frame: locals to drop: [15,14,13,12,11,10,9,8,7,6,5,4,3,2,1]
-[Debug] drop_value: place: var@15
-[Debug] drop_value: place: var@14
-[Debug] drop_value: place: var@13
-[Debug] drop_value: place: var@12
-[Debug] drop_value: place: var@11
-[Debug] drop_value: place: var@10
-[Debug] drop_value: place: var@9
-[Debug] drop_value: place: var@8
-[Debug] drop_value: place: var@7
-[Debug] drop_value: place: var@6
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: j
-[Debug] drop_value: place: i
-[Debug] drop_value: place: max
-[Debug] ctx_pop_frame: after dropping local variables:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> ⊥ : u32 ;
- i -> ⊥ : u32 ;
- j -> ⊥ : u32 ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : u32 ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : u32 ;
- var@10 -> ⊥ : u32 ;
- var@11 -> ⊥ : (u32, bool) ;
- var@12 -> ⊥ : (u32, bool) ;
- var@13 -> ⊥ : u32 ;
- var@14 -> ⊥ : (u32, bool) ;
- var@15 -> ⊥ : (u32, bool) ;
-}
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (j) -> 2: u32 ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : u32 ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : u32 ;
+ Some (var@10) -> 1: u32 ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+ Some (var@12) -> ⊥ : (u32, bool) ;
+ Some (var@13) -> 1: u32 ;
+ Some (var@14) -> ⊥ : (u32, bool) ;
+ Some (var@15) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move s
[Debug]
**About to evaluate statement**: [
@@ -46494,31 +91262,107 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -46534,34 +91378,224 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -46582,31 +91616,107 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> 2: u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> 2: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -46622,34 +91732,338 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> 2: u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> 2: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> 2: u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@20
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -46669,31 +92083,107 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> true ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> true ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -46709,34 +92199,224 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> true ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> true ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> true ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@19
[Debug]
**About to evaluate statement**: [
@@ -46755,31 +92435,107 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> false ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> false ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -46795,34 +92551,224 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> false ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> false ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> false ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@18
[Debug]
**About to evaluate statement**: [
@@ -46840,31 +92786,107 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -46880,34 +92902,224 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -46944,47 +93156,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47000,50 +93288,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> ⊥ : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -47079,47 +93573,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47135,50 +93705,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> ⊥ : u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> ⊥ : u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+0: u32
[Debug]
**About to evaluate statement**: [
@@ -47213,47 +93989,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47289,47 +94141,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47363,47 +94291,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47419,50 +94423,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -47492,47 +94702,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47548,50 +94834,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -47620,47 +95112,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47676,50 +95244,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 0: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 0: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -47747,50 +95651,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -47813,47 +95923,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47869,50 +96055,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -47934,47 +96326,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -47990,50 +96458,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+3: u32
[Debug]
**About to evaluate statement**: [
@@ -48054,50 +96858,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> false ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -48113,47 +97123,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -48169,50 +97255,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -48227,47 +97519,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -48283,50 +97651,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@8
[Debug]
**About to evaluate statement**: [
@@ -48340,47 +98044,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -48396,50 +98176,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 0: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 0: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -48452,47 +98568,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -48526,47 +98718,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -48582,50 +98850,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -48655,47 +99129,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -48711,50 +99261,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -48783,47 +99539,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -48839,50 +99671,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 1: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 1: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -48910,50 +100078,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> true ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -48976,47 +100350,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49032,50 +100482,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -49097,47 +100753,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> 1: u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49153,50 +100885,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> 1: u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 1: u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@7
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+3: u32
[Debug]
**About to evaluate statement**: [
@@ -49217,50 +101285,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> false ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -49276,47 +101550,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49332,50 +101682,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 0: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 0: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -49390,47 +101946,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49446,50 +102078,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 0: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 0: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@8
[Debug]
**About to evaluate statement**: [
@@ -49503,47 +102471,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49559,50 +102603,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 1: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 1: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -49615,47 +102995,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49689,47 +103145,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49745,50 +103277,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy i
[Debug]
**About to evaluate statement**: [
@@ -49818,47 +103556,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -49874,50 +103688,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy max
[Debug]
**About to evaluate statement**: [
@@ -49946,47 +103966,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -50002,50 +104098,386 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> 2: u32 ;
- var@5 -> 2: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> 2: u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> 2: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -50073,50 +104505,256 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> false ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -50129,47 +104767,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -50186,47 +104900,123 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -50242,103 +105032,515 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 1: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-
-
-[Debug]
-**About to evaluate statement**: [
- return
-]
-
-**Context**:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy s
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 1: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+1: u32
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
}
@@ -50349,109 +105551,254 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> 2: u32 ;
- i -> 2: u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> 1: u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
-
-[Debug] ctx_pop_frame: locals to drop: [11,10,9,8,7,6,5,4,3,2,1]
-[Debug] drop_value: place: var@11
-[Debug] drop_value: place: var@10
-[Debug] drop_value: place: var@9
-[Debug] drop_value: place: var@8
-[Debug] drop_value: place: var@7
-[Debug] drop_value: place: var@6
-[Debug] drop_value: place: var@5
-[Debug] drop_value: place: var@4
-[Debug] drop_value: place: var@3
-[Debug] drop_value: place: i
-[Debug] drop_value: place: max
-[Debug] ctx_pop_frame: after dropping local variables:
-# Ended regions: {}
-# 2 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-# Frame 1:
-{
- s -> 2: u32 ;
- max -> ⊥ : u32 ;
- i -> ⊥ : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : u32 ;
- var@8 -> ⊥ : u32 ;
- var@9 -> ⊥ : (u32, bool) ;
- var@10 -> ⊥ : (u32, bool) ;
- var@11 -> ⊥ : (u32, bool) ;
-}
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+# Frame 1:
+{
+ Some (s) -> 2: u32 ;
+ Some (max) -> 2: u32 ;
+ Some (i) -> 2: u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : u32 ;
+ Some (var@8) -> 1: u32 ;
+ Some (var@9) -> ⊥ : (u32, bool) ;
+ Some (var@10) -> ⊥ : (u32, bool) ;
+ Some (var@11) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move s
[Debug]
**About to evaluate statement**: [
@@ -50468,31 +105815,119 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -50508,34 +105943,248 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -50551,31 +106200,119 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> 2: u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> 2: u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -50591,34 +106328,374 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> 2: u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> 2: u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> 2: u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@24
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -50633,31 +106710,119 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> true ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> true ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -50673,34 +106838,248 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> true ;
- var@24 -> ⊥ : u32 ;
-}
-
-
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> true ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> true ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@23
[Debug]
**About to evaluate statement**: [
@@ -50714,31 +107093,119 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> false ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> false ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -50754,71 +107221,373 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> false ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
-}
-
-
-
-[Debug]
-**About to evaluate statement**: [
- return
-]
-
-**Context**:
-# Ended regions: {}
-# 1 frame(s)
-
-# Frame 0:
-{
- var@0 -> ⊥ : () ;
- x -> 2: u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> 3: u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> 1: u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> 2: u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> false ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> false ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+move var@22
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> 3: u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> 1: u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> 2: u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 20: u32 ;
+ None -> 1: u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> 0: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : u32 ;
+ None -> 2: u32 ;
+ None -> 2: u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : u32 ;
+ None -> ⊥ : bool ;
+ None -> ⊥ : u32 ;
+ None -> 1: u32 ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
+ None -> ⊥ : (u32, bool) ;
}
@@ -50849,18 +107618,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -50876,22 +107645,47 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -50916,18 +107710,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -50943,18 +107737,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -50982,18 +107776,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -51009,18 +107803,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -51047,18 +107841,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -51074,18 +107868,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -51111,18 +107905,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -51138,32 +107932,49 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Borrow
- (Values.MutBorrow (<opaque>,
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
- )));
- ty = (Types.Ref (Types.Erased, (Types.Integer Types.I32), Types.Mut)) }
+&mut@0 (0: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
var@2 := &mut *(x);
@@ -51177,25 +107988,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (&mut@0 (0: i32)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51211,25 +108022,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (&mut@0 (0: i32)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51246,25 +108057,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (&mut@0 (0: i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (&mut@0 (0: i32)) ;
}
@@ -51280,25 +108091,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (&mut@0 (0: i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (&mut@0 (0: i32)) ;
}
@@ -51314,25 +108125,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (&mut@0 (0: i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
@@ -51343,57 +108154,59 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (&mut@0 (0: i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
-[Debug] ctx_pop_frame: locals to drop: [2,1]
-[Debug] drop_value: place: var@2
-[Debug] drop_value: place: x
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (&mut@0 (0: i32)) ;
- x -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
*(*(ppy)) := 1: i32;
@@ -51414,18 +108227,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (0: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -51441,21 +108257,52 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (0: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -51476,18 +108323,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -51503,21 +108353,439 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+copy *(px)
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 2))
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 3))
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] end borrow: 3: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 4))
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] give_back:
+- bid: 4
+- content: &mut@4 (&mut@0 (1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 4
+- value: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (&mut@0 (1: i32)) ;
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (&mut@0 (1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (&mut@0 (1: i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 2
+- content: &mut@2 (&mut@0 (1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 2
+- value: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (&mut@0 (1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] give_back_value:
+- bid: 1
+- value: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -51537,18 +108805,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51564,22 +108835,81 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> 1: i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> 1: i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@6 := ¬ move var@7;
@@ -51597,18 +108927,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> true ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51624,22 +108957,53 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> true ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@6);
@@ -51656,18 +109020,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> false ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51683,22 +109050,53 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> false ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> false ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@11 := copy x;
@@ -51714,18 +109112,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51741,21 +109142,130 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -51771,18 +109281,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> 1: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51798,22 +109311,81 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> 1: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> 1: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@9 := ¬ move var@10;
@@ -51827,18 +109399,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> true ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51854,21 +109429,52 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> true ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -51882,18 +109488,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> false ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> false ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51909,21 +109518,52 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> false ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> false ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> false ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -51936,18 +109576,21 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -51987,24 +109630,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52020,28 +109663,59 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -52075,24 +109749,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52108,24 +109782,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52162,24 +109836,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52195,24 +109869,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52248,24 +109922,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52281,24 +109955,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52333,24 +110007,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -52366,38 +110040,61 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Borrow
- (Values.MutBorrow (<opaque>,
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
- )));
- ty = (Types.Ref (Types.Erased, (Types.Integer Types.I32), Types.Mut)) }
+&mut@0 (0: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
var@2 := &mut *(x);
@@ -52411,31 +110108,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (&mut@0 (0: i32)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -52451,31 +110148,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (&mut@0 (0: i32)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -52492,31 +110189,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (&mut@0 (0: i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (&mut@0 (0: i32)) ;
}
@@ -52532,31 +110229,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (&mut@0 (0: i32)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (&mut@0 (0: i32)) ;
}
@@ -52572,31 +110269,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (&mut@0 (0: i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
@@ -52607,69 +110304,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (&mut@0 (0: i32)) ;
- x -> &mut@2 (⌊mut@3⌋) ;
- var@2 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
-[Debug] ctx_pop_frame: locals to drop: [2,1]
-[Debug] drop_value: place: var@2
-[Debug] drop_value: place: x
-[Debug] ctx_pop_frame: after dropping local variables:
+[Debug] eval_operand:
+- ctx:
# Ended regions: {}
# 2 frame(s)
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
# Frame 1:
{
- var@0 -> &mut@4 (&mut@0 (0: i32)) ;
- x -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
}
+
+- op:
+move var@0
+
[Debug]
**About to evaluate statement**: [
*(*(ppy)) := 1: i32;
@@ -52699,24 +110398,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (0: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -52732,28 +110434,65 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (0: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
y := 2: i32;
@@ -52782,24 +110521,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -52815,27 +110557,64 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
+- op:
+2: i32
[Debug]
**About to evaluate statement**: [
@@ -52864,24 +110643,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 2: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 2: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -52897,24 +110679,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 2: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 2: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -52945,24 +110730,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (2: i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (2: i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -52978,24 +110766,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (2: i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (2: i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -53025,24 +110816,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> &mut@6 (2: i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> &mut@6 (2: i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -53058,27 +110852,166 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@0 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> &mut@6 (2: i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> &mut@6 (2: i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> &mut@6 (2: i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+move var@8
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⊥ : &'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> &mut@6 (2: i32) ;
+ None -> &mut@0 (1: i32) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⊥ : &'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> &mut@6 (2: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
}
+[Debug] give_back_value:
+- bid: 0
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⊥ : &'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> &mut@6 (2: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -53104,24 +111037,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@6 (2: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
@@ -53137,28 +111073,542 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@4⌋) ;
- ppy -> &mut@4 (&mut@6 (2: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+copy *(px)
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 2))
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 3))
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] end borrow: 3: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 4))
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] give_back:
+- bid: 4
+- content: &mut@4 (&mut@6 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 4
+- value: &mut@6 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (&mut@6 (2: i32)) ;
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (&mut@6 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: &mut@6 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (&mut@6 (2: i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 2
+- content: &mut@2 (&mut@6 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 2
+- value: &mut@6 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@6 (2: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (&mut@6 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: &mut@6 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@10 := move var@11 == 2: i32;
@@ -53182,24 +111632,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> 2: i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> 2: i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53215,28 +111668,99 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> 2: i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> 2: i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> 2: i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+2: i32
+
[Debug]
**About to evaluate statement**: [
var@9 := ¬ move var@10;
@@ -53259,24 +111783,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> true ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53292,27 +111819,64 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> true ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -53335,24 +111899,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> false ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> false ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53368,28 +111935,65 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> false ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> false ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> false ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@9
+
[Debug]
**About to evaluate statement**: [
*(px) := 3: i32;
@@ -53410,24 +112014,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53443,27 +112050,64 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+- op:
+3: i32
[Debug]
**About to evaluate statement**: [
@@ -53484,24 +112128,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53517,28 +112164,65 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@13 := move var@14 == 1: i32;
@@ -53557,24 +112241,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> 1: i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> 1: i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53590,28 +112277,99 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> 1: i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> 1: i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> 1: i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@14
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@12 := ¬ move var@13;
@@ -53629,24 +112387,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> true ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> true ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53662,28 +112423,65 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> true ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> true ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> true ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@13
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@12);
@@ -53700,24 +112498,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> false ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> false ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53733,28 +112534,65 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> false ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> false ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> false ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@12
+
[Debug]
**About to evaluate statement**: [
var@17 := copy y;
@@ -53770,24 +112608,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53803,28 +112644,288 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> &mut@6 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+copy y
+
+[Debug] end borrow: 5:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] end borrow: 5: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 6))
+[Debug] end borrow: 6:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> &mut@6 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 6
+- content: &mut@6 (3: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 6
+- value: 3: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 5:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (3: i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 5
+- content: &mut@5 (3: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 5
+- value: 3: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@16 := move var@17 == 3: i32;
@@ -53839,24 +112940,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 3: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> 3: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> 3: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53872,27 +112976,98 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 3: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> 3: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> 3: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> 3: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+- op:
+move var@17
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+3: i32
[Debug]
**About to evaluate statement**: [
@@ -53907,24 +113082,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 3: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> true ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> true ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -53940,28 +113118,65 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 3: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> true ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> true ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> true ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@16
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@15);
@@ -53974,24 +113189,27 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 3: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> false ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> false ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -54007,30 +113225,783 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 3: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> false ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> false ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> false ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@15
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 3: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] test_unit_function: id_mut_mut_test3
+[Debug]
+**About to evaluate statement**: [
+ x := 0: i32;
+ px := &mut x;
+ ppx := &mut px;
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ x := 0: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
+[Debug]
+**About to evaluate statement**: [
+ px := &mut x;
+ ppx := &mut px;
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ px := &mut x
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppx := &mut px;
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppx := &mut px
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@5 := &two-phase *(ppx)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppy := move id_mut_mut<i32>(move var@5)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
}
+[Debug] activate_inactivated_mut_borrow: resulting value:
+&mut@0 (0: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
+ var@2 := &mut *(x);
+ var@0 := &mut *(var@2);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@2 := &mut *(x)
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@0 := &mut *(var@2);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (&mut@0 (0: i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@0 := &mut *(var@2)
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (&mut@0 (0: i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] ctx_pop_frame:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (x) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@2) -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+move var@0
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
return
]
@@ -54040,24 +114011,2530 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 3: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppy)) := 1: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (0: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+1: i32
+
+[Debug]
+**About to evaluate statement**: [
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@7 := &two-phase *(ppy)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (@shared_loan({5}, &mut@0 (1: i32))) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⌊inactivated_mut@5⌋ ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppz := move id_mut_mut<i32>(move var@7)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (@shared_loan({5}, &mut@0 (1: i32))) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⌊inactivated_mut@5⌋ ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+
+[Debug] activate_inactivated_mut_borrow: resulting value:
+&mut@0 (1: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> &mut@5 (&mut@0 (1: i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+
+- op:
+move var@7
+
+[Debug]
+**About to evaluate statement**: [
+ var@2 := &mut *(x);
+ var@0 := &mut *(var@2);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@5 (&mut@0 (1: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@2 := &mut *(x)
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@5 (&mut@0 (1: i32)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@0 := &mut *(var@2);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@2) -> &mut@6 (&mut@0 (1: i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@0 := &mut *(var@2)
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (x) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@2) -> &mut@6 (&mut@0 (1: i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> &mut@7 (&mut@0 (1: i32)) ;
+ Some (x) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@2) -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+
+[Debug] ctx_pop_frame:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> &mut@7 (&mut@0 (1: i32)) ;
+ Some (x) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@2) -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 2 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+}
+
+# Frame 1:
+{
+ Some (var@0) -> &mut@7 (&mut@0 (1: i32)) ;
+ Some (x) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@2) -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+- op:
+move var@0
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (1: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppz)) := 2: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (1: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (1: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+- op:
+2: i32
+
+[Debug]
+**About to evaluate statement**: [
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@10 := copy *(px)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+- op:
+copy *(px)
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 2))
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 3))
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] end borrow: 3: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 4))
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] end borrow: 4: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 5))
+[Debug] end borrow: 5:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] end borrow: 5: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 6))
+[Debug] end borrow: 6:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] end borrow: 6: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 7))
+[Debug] end borrow: 7:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@7 (&mut@0 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+[Debug] give_back:
+- bid: 7
+- content: &mut@7 (&mut@0 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 7
+- value: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (⌊mut@7⌋) ;
+}
+
+
+[Debug] end borrow: 6:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> &mut@6 (&mut@0 (2: i32)) ;
+}
+
+[Debug] give_back:
+- bid: 6
+- content: &mut@6 (&mut@0 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 6
+- value: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (⌊mut@6⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 5:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@5 (&mut@0 (2: i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 5
+- content: &mut@5 (&mut@0 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 5
+- value: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@4 (&mut@0 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 4
+- content: &mut@4 (&mut@0 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 4
+- value: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (⌊mut@4⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> &mut@3 (&mut@0 (2: i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (&mut@0 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (⌊mut@3⌋) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> &mut@2 (&mut@0 (2: i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 2
+- content: &mut@2 (&mut@0 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 2
+- value: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (2: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (&mut@0 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> 2: i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@9 := move var@10 == 2: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> 2: i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> 2: i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@10
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+2: i32
+
+[Debug]
+**About to evaluate statement**: [
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@8 := ¬ move var@9
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@9
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@8)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@8
+
+[Debug]
+**About to evaluate statement**: [
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@13 := copy x
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: 2: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> 2: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@12 := move var@13 == 2: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> 2: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> 2: i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@13
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+2: i32
+
+[Debug]
+**About to evaluate statement**: [
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> true ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@11 := ¬ move var@12
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> true ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> true ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@12
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> false ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@11)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> false ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> false ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+}
+
+
+- op:
+move var@11
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ None -> ⊥ : &'_ mut (&'_ mut (i32)) ;
}
@@ -54077,12 +116554,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54098,16 +116575,35 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@4 := copy y;
@@ -54121,12 +116617,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54142,16 +116638,35 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy y
+
[Debug]
**About to evaluate statement**: [
var@0 := copy var@3 + copy var@4;
@@ -54164,12 +116679,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54185,16 +116700,54 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@3
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@4
+
[Debug]
**About to evaluate statement**: [
return
@@ -54206,12 +116759,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> s@2 : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> s@2 : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54231,12 +116784,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54252,15 +116805,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -54275,12 +116847,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54296,15 +116868,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
+- op:
+copy y
[Debug]
**About to evaluate statement**: [
@@ -54318,12 +116909,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54339,16 +116930,54 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@3
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
+}
+
+
+- op:
+copy var@4
+
[Debug]
**About to evaluate statement**: [
return
@@ -54360,12 +116989,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> s@2 : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : (u32, bool) ;
+ Some (var@0) -> s@2 : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : (u32, bool) ;
}
@@ -54385,12 +117014,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54406,16 +117035,35 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@4 := copy y;
@@ -54429,12 +117077,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54450,15 +117098,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
+- op:
+copy y
[Debug]
**About to evaluate statement**: [
@@ -54472,12 +117139,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54493,15 +117160,53 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
+- op:
+move var@3
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -54514,12 +117219,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> s@2 : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> s@2 : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54539,12 +117244,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54560,16 +117265,35 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@4 := copy y;
@@ -54583,12 +117307,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54604,15 +117328,34 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
+- op:
+copy y
[Debug]
**About to evaluate statement**: [
@@ -54626,12 +117369,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54647,16 +117390,54 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@0 : u32 ;
- var@4 -> s@1 : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@0 : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+- op:
+move var@3
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> s@1 : u32 ;
+ Some (var@5) -> ⊥ : bool ;
+}
+
+
+- op:
+move var@4
+
[Debug]
**About to evaluate statement**: [
return
@@ -54668,12 +117449,12 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> s@2 : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : bool ;
+ Some (var@0) -> s@2 : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : bool ;
}
@@ -54702,17 +117483,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -54728,20 +117509,44 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+- op:
+23: u32
[Debug]
**About to evaluate statement**: [
@@ -54765,17 +117570,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -54791,21 +117596,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+44: u32
+
[Debug]
**About to evaluate statement**: [
z := 67: u32;
@@ -54827,17 +117656,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -54853,21 +117682,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> ⊥ : u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+67: u32
+
[Debug]
**About to evaluate statement**: [
var@5 := copy x;
@@ -54888,17 +117741,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -54914,20 +117767,44 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -54948,17 +117825,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> 23: u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> 23: u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -54974,21 +117851,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> ⊥ : test1::Pair<u32, u32> ;
- var@5 -> 23: u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> 23: u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> ⊥ : test1::Pair<u32, u32> ;
+ Some (var@5) -> 23: u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+move var@5
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (0, None)), 0))
ty: (Types.Adt ((Types.AdtId 0), [],
@@ -55011,17 +117912,17 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55037,20 +117938,44 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = ⊥ : u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+- op:
+67: u32
[Debug]
**About to evaluate statement**: [
@@ -55069,17 +117994,17 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55095,21 +118020,45 @@ ty: (Types.Adt ((Types.AdtId 0), [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> ⊥ : test1::Sum<u32, bool> ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> ⊥ : test1::Sum<u32, bool> ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+true
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (6, (Some 1))), 0))
ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
@@ -55129,17 +118078,17 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55155,17 +118104,17 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55185,17 +118134,17 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55211,21 +118160,45 @@ ty: (Types.Adt ((Types.AdtId 6), [], [(Types.Integer Types.U32); Types.Bool]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> ⊥ : test1::One<u64> ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> ⊥ : test1::One<u64> ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
+}
+
+
+- op:
+3: u64
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (2, (Some 0))), 0))
ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
@@ -55243,17 +118216,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55269,17 +118242,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55297,17 +118270,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55323,17 +118296,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> ⊥ : test1::EmptyEnum ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> ⊥ : test1::EmptyEnum ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55350,17 +118323,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> test1::EmptyEnum::Empty ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> test1::EmptyEnum::Empty ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55376,17 +118349,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> test1::EmptyEnum::Empty ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> ⊥ : test1::Enum ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> test1::EmptyEnum::Empty ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> ⊥ : test1::Enum ;
}
@@ -55402,17 +118375,17 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 23: u32 ;
- y -> 44: u32 ;
- z -> 67: u32 ;
- p -> test1::Pair { x = 23: u32; y = 67: u32; } ;
- var@5 -> ⊥ : u32 ;
- s -> test1::Sum::Right { 0 = true; } ;
- o -> test1::One::One { 0 = 3: u64; } ;
- e0 -> test1::EmptyEnum::Empty ;
- e1 -> ⊥ : test1::EmptyEnum ;
- enum0 -> test1::Enum::Variant1 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 23: u32 ;
+ Some (y) -> 44: u32 ;
+ Some (z) -> 67: u32 ;
+ Some (p) -> test1::Pair { x = 23: u32; y = 67: u32; } ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (s) -> test1::Sum::Right { 0 = true; } ;
+ Some (o) -> test1::One::One { 0 = 3: u64; } ;
+ Some (e0) -> test1::EmptyEnum::Empty ;
+ Some (e1) -> ⊥ : test1::EmptyEnum ;
+ Some (enum0) -> test1::Enum::Variant1 ;
}
@@ -55438,12 +118411,12 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -55459,15 +118432,34 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -55488,12 +118480,12 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> s@0 : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -55509,15 +118501,34 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> s@0 : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+- op:
+copy y
[Debug]
**About to evaluate statement**: [
@@ -55537,12 +118548,12 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
}
@@ -55558,15 +118569,53 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
}
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+}
+
+
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -55585,12 +118634,12 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@2 : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@2 : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -55611,16 +118660,35 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> s@2 : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> s@2 : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> true ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
var@0 := copy x
@@ -55632,15 +118700,53 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> false ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+- op:
+move var@3
[Debug]
**About to evaluate statement**: [
@@ -55653,15 +118759,34 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
+- op:
+copy y
[Debug]
**About to evaluate statement**: [
@@ -55674,12 +118799,12 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> s@0 : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> s@0 : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -55695,12 +118820,12 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> s@1 : u32 ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
+ Some (var@0) -> s@1 : u32 ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
}
@@ -55726,16 +118851,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -55751,19 +118876,65 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+4: u32
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+- op:
+3: u32
[Debug]
**About to evaluate statement**: [
@@ -55784,16 +118955,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -55809,20 +118980,66 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> ⊥ : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+10: u32
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> ⊥ : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+11: u32
+
[Debug]
**About to evaluate statement**: [
var@4 := copy x;
@@ -55841,16 +119058,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -55866,19 +119083,42 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> ⊥ : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -55897,16 +119137,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -55922,20 +119162,43 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> ⊥ : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy y
+
[Debug]
**About to evaluate statement**: [
z := copy var@4 + copy var@5;
@@ -55952,16 +119215,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -55977,20 +119240,66 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> ⊥ : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> ⊥ : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy var@5
+
[Debug]
**About to evaluate statement**: [
var@9 := copy z;
@@ -56006,16 +119315,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -56031,20 +119340,43 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy z
+
[Debug]
**About to evaluate statement**: [
var@8 := move var@9 == 15: u32;
@@ -56059,16 +119391,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> s@2 : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@2 : u32 ;
}
@@ -56084,19 +119416,65 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> s@2 : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@2 : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@2 : u32 ;
}
+- op:
+move var@9
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+15: u32
[Debug]
**About to evaluate statement**: [
@@ -56111,16 +119489,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@3 : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@3 : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -56136,20 +119514,43 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@3 : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@3 : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@3 : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@8
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@7);
@@ -56162,16 +119563,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> s@4 : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> s@4 : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -56187,19 +119588,42 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> s@4 : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> s@4 : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -56212,16 +119636,16 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- y -> s@1 : u32 ;
- z -> s@2 : u32 ;
- var@4 -> s@0 : u32 ;
- var@5 -> s@1 : u32 ;
- var@6 -> ⊥ : (u32, bool) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (y) -> s@1 : u32 ;
+ Some (z) -> s@2 : u32 ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (var@5) -> s@1 : u32 ;
+ Some (var@6) -> ⊥ : (u32, bool) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : u32 ;
}
@@ -56242,10 +119666,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> ⊥ : i32 ;
- var@3 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> ⊥ : i32 ;
+ Some (var@3) -> ⊥ : bool ;
}
@@ -56261,13 +119685,30 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> ⊥ : i32 ;
- var@3 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> ⊥ : i32 ;
+ Some (var@3) -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> ⊥ : i32 ;
+ Some (var@3) -> ⊥ : bool ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -56283,10 +119724,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> s@0 : i32 ;
- var@3 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> ⊥ : bool ;
}
@@ -56302,13 +119743,47 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> s@0 : i32 ;
- var@3 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> ⊥ : bool ;
}
+- op:
+copy var@2
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> ⊥ : bool ;
+}
+
+
+- op:
+-2147483648: i32
[Debug]
**About to evaluate statement**: [
@@ -56323,10 +119798,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> s@0 : i32 ;
- var@3 -> s@1 : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> s@1 : bool ;
}
@@ -56342,14 +119817,31 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> s@0 : i32 ;
- var@3 -> s@1 : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> s@1 : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> true ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
var@0 := - move var@2;
@@ -56362,10 +119854,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> s@0 : i32 ;
- var@3 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> ⊥ : bool ;
}
@@ -56381,13 +119873,30 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
- var@2 -> s@0 : i32 ;
- var@3 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> ⊥ : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> s@0 : i32 ;
+ Some (var@3) -> ⊥ : bool ;
}
+- op:
+move var@2
[Debug]
**About to evaluate statement**: [
@@ -56400,10 +119909,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> s@2 : i32 ;
- x -> s@0 : i32 ;
- var@2 -> ⊥ : i32 ;
- var@3 -> ⊥ : bool ;
+ Some (var@0) -> s@2 : i32 ;
+ Some (x) -> s@0 : i32 ;
+ Some (var@2) -> ⊥ : i32 ;
+ Some (var@3) -> ⊥ : bool ;
}
@@ -56422,9 +119931,9 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
}
@@ -56440,12 +119949,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
}
+- op:
+3: i32
[Debug]
**About to evaluate statement**: [
@@ -56459,9 +119984,9 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 3: i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> ⊥ : i32 ;
}
@@ -56477,12 +120002,28 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 3: i32 ;
- y -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> ⊥ : i32 ;
}
+- op:
+-3: i32
[Debug]
**About to evaluate statement**: [
@@ -56495,9 +120036,9 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 3: i32 ;
- y -> -3: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 3: i32 ;
+ Some (y) -> -3: i32 ;
}
@@ -56522,13 +120063,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56544,17 +120085,37 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -56573,13 +120134,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56595,13 +120156,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56623,13 +120184,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56645,13 +120206,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56672,13 +120233,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56694,16 +120255,36 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -56720,13 +120301,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (1: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56742,17 +120323,162 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (1: i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.OuterBorrows (InterpreterBorrowsCore.Borrow 1))
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (1: i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (&mut@0 (1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@5 := move var@6 == 1: i32;
@@ -56767,13 +120493,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> 1: i32 ;
}
@@ -56789,16 +120515,56 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> 1: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> 1: i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> 1: i32 ;
}
+- op:
+move var@6
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -56813,13 +120579,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> s@0 : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> s@0 : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56835,17 +120601,37 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> s@0 : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> s@0 : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> s@0 : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@4);
@@ -56858,13 +120644,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> s@1 : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> s@1 : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56880,16 +120666,36 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> s@1 : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> s@1 : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -56902,13 +120708,13 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : i32 ;
}
@@ -56949,25 +120755,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -56983,28 +120789,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -57040,25 +120878,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57074,28 +120912,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -57130,25 +121000,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57164,25 +121034,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 1: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57219,25 +121089,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 1: i32 ;
- px -> &mut@0 (0: i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57253,25 +121123,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 1: i32 ;
- px -> &mut@0 (0: i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 1: i32 ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57307,25 +121177,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@0 (0: i32) ;
- py -> &mut@1 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57341,25 +121211,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@0 (0: i32) ;
- py -> &mut@1 (1: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57394,25 +121264,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (1: i32) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57428,25 +121298,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (1: i32) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (1: i32) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57480,25 +121350,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> &mut@3 (1: i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> &mut@3 (1: i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57514,29 +121384,157 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@0 (0: i32)) ;
- var@6 -> &mut@3 (1: i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> &mut@3 (1: i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> &mut@3 (1: i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@6
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (⊥ : &'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> &mut@3 (1: i32) ;
+ None -> &mut@0 (0: i32) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (0: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (⊥ : &'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> &mut@3 (1: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: 0: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (⊥ : &'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ None -> &mut@3 (1: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+}
+
+
[Debug]
**About to evaluate statement**: [
*(*(ppx)) := 2: i32;
@@ -57565,25 +121563,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (1: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (1: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57599,29 +121597,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (1: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (1: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (1: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
+
[Debug]
**About to evaluate statement**: [
var@9 := copy *(px);
@@ -57649,25 +121679,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (2: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57683,27 +121713,149 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⌊mut@2⌋ ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> &mut@2 (&mut@3 (2: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy *(px)
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> &mut@2 (&mut@3 (2: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] give_back:
+- bid: 2
+- content: &mut@2 (&mut@3 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 2
+- value: &mut@3 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⌊mut@2⌋ ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
[Debug]
@@ -57732,25 +121884,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> 2: i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 2: i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57766,29 +121918,93 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> 2: i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 2: i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> 2: i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@9
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
+
[Debug]
**About to evaluate statement**: [
var@7 := ¬ move var@8;
@@ -57814,25 +122030,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@0 : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@0 : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57848,28 +122064,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@0 : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@0 : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@0 : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@8
[Debug]
**About to evaluate statement**: [
@@ -57895,25 +122143,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> s@1 : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> s@1 : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -57929,29 +122177,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> s@1 : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> s@1 : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> true ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
var@12 := copy x;
@@ -57975,25 +122255,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58009,28 +122289,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -58054,25 +122366,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 0: i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 0: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58088,29 +122400,93 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> 0: i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 0: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> 0: i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@12
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
var@10 := ¬ move var@11;
@@ -58132,25 +122508,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@2 : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@2 : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58166,28 +122542,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@2 : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@2 : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@2 : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@11
[Debug]
**About to evaluate statement**: [
@@ -58209,25 +122617,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> s@3 : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> s@3 : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58243,29 +122651,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> s@3 : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> s@3 : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@10
+
[Debug]
**About to evaluate statement**: [
var@15 := copy *(py);
@@ -58285,25 +122725,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58319,27 +122759,149 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> &mut@3 (2: i32) ;
- py -> &mut@1 (⌊mut@3⌋) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy *(py)
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> &mut@3 (2: i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: 2: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (⌊mut@3⌋) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
[Debug]
@@ -58360,25 +122922,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> 2: i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 2: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58394,29 +122956,93 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> 2: i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 2: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> 2: i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@15
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
+
[Debug]
**About to evaluate statement**: [
var@13 := ¬ move var@14;
@@ -58434,25 +123060,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> s@4 : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@4 : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58468,28 +123094,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> s@4 : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@4 : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@4 : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@14
[Debug]
**About to evaluate statement**: [
@@ -58507,25 +123165,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> s@5 : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> s@5 : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58541,28 +123199,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> s@5 : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> s@5 : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> true ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@13
[Debug]
**About to evaluate statement**: [
@@ -58579,25 +123269,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58613,27 +123303,149 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⌊mut@1⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> &mut@1 (2: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy y
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> &mut@1 (2: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: 2: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⌊mut@1⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
[Debug]
@@ -58650,25 +123462,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> 2: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 2: i32 ;
}
@@ -58684,29 +123496,93 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> 2: i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 2: i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> 2: i32 ;
+}
+
+
+- op:
+move var@18
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
+
[Debug]
**About to evaluate statement**: [
var@16 := ¬ move var@17;
@@ -58720,25 +123596,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> s@6 : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@6 : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58754,29 +123630,61 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> s@6 : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@6 : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@6 : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@17
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@16);
@@ -58789,25 +123697,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> s@7 : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> s@7 : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58823,28 +123731,60 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> s@7 : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> s@7 : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> true ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@16
[Debug]
**About to evaluate statement**: [
@@ -58857,25 +123797,25 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 2: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- py -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : i32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 2: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : i32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -58898,10 +123838,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -58917,10 +123857,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -58941,10 +123881,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
}
@@ -58960,10 +123900,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
}
@@ -58973,6 +123913,23 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
- type_params: [test1::List<i32>]
- args: [move var@3]
- dest: var@2
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
(l as test1::List::Cons).0 := 0: i32;
@@ -58988,10 +123945,10 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -59007,14 +123964,31 @@ ty: (Types.Adt ((Types.AdtId 2), [], [(Types.Integer Types.U64)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+0: i32
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (1, (Some 0))), 0))
ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
@@ -59032,10 +124006,10 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -59051,14 +124025,31 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
set_discriminant(l, 0);
@@ -59072,10 +124063,10 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -59091,10 +124082,10 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -59111,10 +124102,10 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -59130,10 +124121,10 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -59150,10 +124141,10 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
}
@@ -59181,15 +124172,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59205,15 +124196,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59223,6 +124214,28 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- type_params: [i32]
- args: [0: i32]
- dest: b
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
var@3 := &two-phase b;
@@ -59244,15 +124257,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> s@0 : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> s@0 : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59268,15 +124281,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> s@0 : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> s@0 : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59301,15 +124314,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({0}, s@0 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⌊inactivated_mut@0⌋ ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({0}, s@0 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⌊inactivated_mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59325,15 +124338,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({0}, s@0 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⌊inactivated_mut@0⌋ ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({0}, s@0 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⌊inactivated_mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59344,15 +124357,29 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- args: [move var@3]
- dest: x
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Symbolic
- { Values.sv_id = 0;
- sv_ty =
- (Types.Adt ((Types.Assumed Types.Box), [], [(Types.Integer Types.I32)]
- ))
- });
- ty =
- (Types.Adt ((Types.Assumed Types.Box), [], [(Types.Integer Types.I32)])) }
+s@0 : std::boxed::Box<i32>
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> &mut@0 (s@0 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
*(x) := 1: i32;
@@ -59372,15 +124399,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> s@1 : &r@0 mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> s@1 : &r@0 mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
proj_loans (s@1 : &r@0 mut (i32))
@@ -59400,15 +124427,39 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> s@1 : &r@0 mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> s@1 : &r@0 mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
+ proj_loans (s@1 : &r@0 mut (i32))
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> s@1 : &r@0 mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
proj_loans (s@1 : &r@0 mut (i32))
@@ -59416,6 +124467,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
+- op:
+1: i32
[Debug] expand_symbolic_value: s@1 : &r@0 mut (i32)
@@ -59425,19 +124478,20 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> s@1 : &r@0 mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> s@1 : &r@0 mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
proj_loans (s@1 : &r@0 mut (i32))
}
+ None -> 1: i32 ;
}
@@ -59447,19 +124501,20 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> &mut@1 (s@2 : i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (s@2 : i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
⌊mut@1, proj_loans (s@2 : i32)⌋
}
+ None -> 1: i32 ;
}
@@ -59481,15 +124536,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> &mut@1 (1: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
⌊mut@1, proj_loans (s@2 : i32)⌋
@@ -59509,15 +124564,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> &mut@1 (1: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
⌊mut@1, proj_loans (s@2 : i32)⌋
@@ -59526,6 +124581,29 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
+ ⌊mut@1, proj_loans (s@2 : i32)⌋
+ }
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 0)
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -59533,15 +124611,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> &mut@1 (1: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
⌊mut@1, proj_loans (s@2 : i32)⌋
@@ -59555,21 +124633,93 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> &mut@1 (1: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
+ ⌊mut@1, proj_loans (s@2 : i32)⌋
+ }
+}
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
+ ⌊mut@1, proj_loans (s@2 : i32)⌋
+ }
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
+ ⌊mut@1, proj_loans (s@2 : i32)⌋
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
⌊mut@1, proj_loans (s@2 : i32)⌋
}
}
+
[Debug] end_abstraction: 0
- context after loans ended:
# Ended regions: {}
@@ -59577,21 +124727,46 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
@ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }
}
}
+[Debug] give_back_value:
+- bid: 0
+- value: s@3 : std::boxed::Box<i32>
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ ⊥ : &r@0 mut (std::boxed::Box<i32>),
+ @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }
+ }
+}
+
+
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -59599,15 +124774,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⌊mut@0⌋ ;
- x -> &mut@1 (1: i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⌊mut@0⌋ ;
+ Some (x) -> &mut@1 (1: i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@0 (proj_borrows (s@0 : std::boxed::Box<i32> <: std::boxed::Box<i32>)),
⌊mut@1, proj_loans (s@2 : i32)⌋
@@ -59621,15 +124796,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> s@3 : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> s@3 : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
[Debug]
@@ -59649,15 +124824,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⌊shared@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⌊shared@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59673,15 +124848,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⌊shared@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⌊shared@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -59691,6 +124866,28 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- type_params: [i32]
- args: [move var@5]
- dest: x
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⌊shared@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
var@8 := copy *(x);
@@ -59707,15 +124904,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> s@4 : &r@1 (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> s@4 : &r@1 (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
proj_loans (s@4 : &r@1 (i32))
@@ -59735,15 +124932,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> s@4 : &r@1 (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> s@4 : &r@1 (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
proj_loans (s@4 : &r@1 (i32))
@@ -59752,6 +124949,32 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> s@4 : &r@1 (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ proj_loans (s@4 : &r@1 (i32))
+ }
+}
+
+
+- op:
+copy *(x)
+
[Debug] expand_symbolic_value: s@4 : &r@1 (i32)
- original context:
@@ -59760,15 +124983,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> s@4 : &r@1 (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> s@4 : &r@1 (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
proj_loans (s@4 : &r@1 (i32))
@@ -59782,15 +125005,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -59813,15 +125036,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@5 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@5 : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -59841,15 +125064,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@5 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@5 : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -59858,6 +125081,58 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@5 : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ @shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
+ }
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ @shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
+ }
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@6 := ¬ move var@7;
@@ -59872,15 +125147,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> s@6 : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@6 : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -59900,15 +125175,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> s@6 : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@6 : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -59917,6 +125192,32 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@6 : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ @shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
+ }
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@6);
@@ -59930,15 +125231,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> s@7 : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> s@7 : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -59958,15 +125259,39 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> s@7 : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> s@7 : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ @shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> true ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -59974,6 +125299,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -59987,15 +125314,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -60015,15 +125342,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
@@ -60033,6 +125360,30 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
[Debug] drop_value: place: b
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ @shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
+ }
+ None -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+}
+
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 1)
[Debug] end_abstraction: 1
- original context:
# Ended regions: {0}
@@ -60040,19 +125391,20 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
}
+ None -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
}
[Debug] end_abstraction: 1
@@ -60062,21 +125414,71 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ @shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
+ }
+ None -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+}
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
}
+ None -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
}
+[Debug] give_back:
+- bid: 3
+- content: ⌊shared@3⌋
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ ⌊shared@2⌋,
+ @shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
+ }
+ None -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
+}
+
+
[Debug] end_abstraction: 1
- context after loans ended:
# Ended regions: {0}
@@ -60084,19 +125486,20 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@ended_shared_loan(s@5 : i32, proj_loans (s@5 : i32))
}
+ None -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
}
[Debug] end_abstraction: 1
@@ -60106,19 +125509,20 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⌊shared@3⌋ ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⌊shared@3⌋ ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
⌊shared@2⌋,
@shared_loan({3}, s@5 : i32, proj_loans (s@5 : i32))
}
+ None -> @shared_loan({2}, s@3 : std::boxed::Box<i32>) ;
}
@@ -60128,15 +125532,16 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> s@3 : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ None -> s@3 : std::boxed::Box<i32> ;
}
[Debug]
@@ -60150,15 +125555,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- b -> ⊥ : std::boxed::Box<i32> ;
- x -> ⊥ : &'_ mut (i32) ;
- var@3 -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
- x -> ⊥ : &'_ (i32) ;
- var@5 -> ⊥ : &'_ (std::boxed::Box<i32>) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (b) -> ⊥ : std::boxed::Box<i32> ;
+ Some (x) -> ⊥ : &'_ mut (i32) ;
+ Some (var@3) -> ⊥ : &'_ mut (std::boxed::Box<i32>) ;
+ Some (x) -> ⊥ : &'_ (i32) ;
+ Some (var@5) -> ⊥ : &'_ (std::boxed::Box<i32>) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60176,8 +125581,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
}
@@ -60193,12 +125598,27 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : i32 ;
- x -> s@0 : i32 ;
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : i32 ;
+ Some (x) -> s@0 : i32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
return
@@ -60210,8 +125630,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> s@0 : i32 ;
- x -> s@0 : i32 ;
+ Some (var@0) -> s@0 : i32 ;
+ Some (x) -> s@0 : i32 ;
}
@@ -60237,15 +125657,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60261,18 +125681,40 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -60293,15 +125735,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60317,15 +125759,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ (i32) ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ (i32) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60348,15 +125790,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60372,19 +125814,41 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
y := move copy_int(move var@4);
@@ -60402,15 +125866,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> 0: i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> 0: i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60426,19 +125890,41 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> ⊥ : i32 ;
- var@4 -> 0: i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> 0: i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (var@4) -> 0: i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@4
+
[Debug]
**About to evaluate statement**: [
var@7 := copy *(px);
@@ -60455,15 +125941,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60479,18 +125965,40 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+- op:
+copy *(px)
[Debug]
**About to evaluate statement**: [
@@ -60507,15 +126015,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60531,19 +126039,41 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy y
+
[Debug]
**About to evaluate statement**: [
var@6 := move var@7 == move var@8;
@@ -60558,15 +126088,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> s@0 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> s@0 : i32 ;
}
@@ -60582,18 +126112,62 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> 0: i32 ;
- var@8 -> s@0 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> s@0 : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> 0: i32 ;
+ Some (var@8) -> s@0 : i32 ;
}
+- op:
+move var@7
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> s@0 : i32 ;
+}
+
+
+- op:
+move var@8
[Debug]
**About to evaluate statement**: [
@@ -60608,15 +126182,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> s@1 : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> s@1 : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60632,18 +126206,40 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> s@1 : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> s@1 : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> s@1 : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -60657,15 +126253,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> s@2 : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> s@2 : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60681,18 +126277,40 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> s@2 : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> s@2 : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> true ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -60705,15 +126323,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> @shared_loan({0}, 0: i32) ;
- px -> ⌊shared@0⌋ ;
- y -> s@0 : i32 ;
- var@4 -> ⊥ : i32 ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : i32 ;
- var@8 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> @shared_loan({0}, 0: i32) ;
+ Some (px) -> ⌊shared@0⌋ ;
+ Some (y) -> s@0 : i32 ;
+ Some (var@4) -> ⊥ : i32 ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : i32 ;
+ Some (var@8) -> ⊥ : i32 ;
}
@@ -60745,9 +126363,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 (test1::List<T>))
}
- var@0 -> ⊥ : bool ;
- l -> s@0 : &r@0 (test1::List<T>) ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> s@0 : &r@0 (test1::List<T>) ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -60766,9 +126384,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 (test1::List<T>))
}
- var@0 -> ⊥ : bool ;
- l -> s@0 : &r@0 (test1::List<T>) ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> s@0 : &r@0 (test1::List<T>) ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -60784,9 +126402,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 (test1::List<T>))
}
- var@0 -> ⊥ : bool ;
- l -> s@0 : &r@0 (test1::List<T>) ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> s@0 : &r@0 (test1::List<T>) ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -60799,9 +126417,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, s@1 : test1::List<T>, proj_loans (s@1 : test1::List<T>))
}
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@0⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -60830,9 +126448,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Cons { 0 = s@2 : T; 1 = s@3 : std::boxed::Box<test1::List<T>>; }, test1::List::Cons { 0 = proj_loans (s@2 : T); 1 = proj_loans (s@3 : std::boxed::Box<test1::List<T>>); })
}
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@0⌋ ;
- var@2 -> 0: isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> 0: isize ;
}
@@ -60861,13 +126479,32 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Cons { 0 = s@2 : T; 1 = s@3 : std::boxed::Box<test1::List<T>>; }, test1::List::Cons { 0 = proj_loans (s@2 : T); 1 = proj_loans (s@3 : std::boxed::Box<test1::List<T>>); })
}
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@0⌋ ;
- var@2 -> 0: isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> 0: isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ @shared_loan({0}, test1::List::Cons { 0 = s@2 : T; 1 = s@3 : std::boxed::Box<test1::List<T>>; }, test1::List::Cons { 0 = proj_loans (s@2 : T); 1 = proj_loans (s@3 : std::boxed::Box<test1::List<T>>); })
+ }
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> 0: isize ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
var@0 := true
@@ -60882,13 +126519,32 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Cons { 0 = s@2 : T; 1 = s@3 : std::boxed::Box<test1::List<T>>; }, test1::List::Cons { 0 = proj_loans (s@2 : T); 1 = proj_loans (s@3 : std::boxed::Box<test1::List<T>>); })
}
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@0⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ @shared_loan({0}, test1::List::Cons { 0 = s@2 : T; 1 = s@3 : std::boxed::Box<test1::List<T>>; }, test1::List::Cons { 0 = proj_loans (s@2 : T); 1 = proj_loans (s@3 : std::boxed::Box<test1::List<T>>); })
+ }
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> ⊥ : isize ;
+}
+
+
+- op:
+true
+
[Debug]
**About to evaluate statement**: [
return
@@ -60903,9 +126559,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Cons { 0 = s@2 : T; 1 = s@3 : std::boxed::Box<test1::List<T>>; }, test1::List::Cons { 0 = proj_loans (s@2 : T); 1 = proj_loans (s@3 : std::boxed::Box<test1::List<T>>); })
}
- var@0 -> true ;
- l -> ⌊shared@0⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> true ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -60935,9 +126591,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Nil, test1::List::Nil)
}
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@0⌋ ;
- var@2 -> 1: isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> 1: isize ;
}
@@ -60966,13 +126622,32 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Nil, test1::List::Nil)
}
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@0⌋ ;
- var@2 -> 1: isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> 1: isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ @shared_loan({0}, test1::List::Nil, test1::List::Nil)
+ }
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> 1: isize ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
var@0 := false
@@ -60987,12 +126662,31 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Nil, test1::List::Nil)
}
- var@0 -> ⊥ : bool ;
- l -> ⌊shared@0⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ @shared_loan({0}, test1::List::Nil, test1::List::Nil)
+ }
+ Some (var@0) -> ⊥ : bool ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
+- op:
+false
[Debug]
**About to evaluate statement**: [
@@ -61008,9 +126702,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
@shared_loan({0}, test1::List::Nil, test1::List::Nil)
}
- var@0 -> false ;
- l -> ⌊shared@0⌋ ;
- var@2 -> ⊥ : isize ;
+ Some (var@0) -> false ;
+ Some (l) -> ⌊shared@0⌋ ;
+ Some (var@2) -> ⊥ : isize ;
}
@@ -61038,14 +126732,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61061,14 +126755,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61094,14 +126788,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61117,14 +126811,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61134,6 +126828,27 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
- type_params: [test1::List<i32>]
- args: [move var@3]
- dest: var@2
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
(l as test1::List::Cons).0 := 0: i32;
@@ -61154,14 +126869,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61177,17 +126892,38 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
+- op:
+0: i32
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (1, (Some 0))), 0))
@@ -61211,14 +126947,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61234,18 +126970,39 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
set_discriminant(l, 0);
@@ -61264,14 +127021,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61287,14 +127044,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61316,14 +127073,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61339,14 +127096,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61367,14 +127124,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
}
@@ -61390,18 +127147,39 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+}
+
+
+- op:
+copy var@7
+
[Debug]
**About to evaluate statement**: [
var@5 := move is_cons<i32>(move var@6);
@@ -61417,14 +127195,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⌊shared@1⌋ ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⌊shared@1⌋ ;
+ Some (var@7) -> ⌊shared@0⌋ ;
}
@@ -61440,17 +127218,38 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⌊shared@1⌋ ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⌊shared@1⌋ ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⌊shared@1⌋ ;
+ Some (var@7) -> ⌊shared@0⌋ ;
}
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -61466,14 +127265,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> s@1 : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> s@1 : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
@@ -61493,14 +127292,37 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> s@1 : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> s@1 : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ abs@0{parents={}}{regions={0}} {
+ ⌊shared@1⌋,
+ proj_loans (s@1 : bool)
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> s@1 : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
@@ -61508,6 +127330,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
+- op:
+move var@5
[Debug]
**About to evaluate statement**: [
@@ -61522,14 +127346,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> s@2 : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> s@2 : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
@@ -61549,14 +127373,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> s@2 : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> s@2 : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
@@ -61565,6 +127389,31 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> true ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ abs@0{parents={}}{regions={0}} {
+ ⌊shared@1⌋,
+ proj_loans (s@1 : bool)
+ }
+}
+
+
+- op:
+move var@4
+
[Debug]
**About to evaluate statement**: [
drop(l);
@@ -61577,14 +127426,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
@@ -61604,14 +127453,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⌊shared@0⌋ ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
@@ -61621,6 +127470,76 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
[Debug] drop_value: place: l
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⌊shared@0⌋ ;
+ abs@0{parents={}}{regions={0}} {
+ ⌊shared@1⌋,
+ proj_loans (s@1 : bool)
+ }
+ None -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: ⌊shared@0⌋
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ abs@0{parents={}}{regions={0}} {
+ ⌊shared@1⌋,
+ proj_loans (s@1 : bool)
+ }
+ None -> @shared_loan({0, 1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+}
+
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ abs@0{parents={}}{regions={0}} {
+ ⌊shared@1⌋,
+ proj_loans (s@1 : bool)
+ }
+ None -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 0)
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -61628,18 +127547,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
}
+ None -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
}
[Debug] end_abstraction: 0
@@ -61649,18 +127569,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
}
+ None -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
}
[Debug] end_abstraction: 0
@@ -61670,18 +127591,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
}
+ None -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
}
[Debug] end_abstraction: 0
@@ -61691,18 +127613,19 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
abs@0{parents={}}{regions={0}} {
⌊shared@1⌋,
proj_loans (s@1 : bool)
}
+ None -> @shared_loan({1}, test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; }) ;
}
@@ -61712,14 +127635,15 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
+ None -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
}
[Debug]
@@ -61733,14 +127657,14 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- var@4 -> ⊥ : bool ;
- var@5 -> ⊥ : bool ;
- var@6 -> ⊥ : &'_ (test1::List<i32>) ;
- var@7 -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (var@4) -> ⊥ : bool ;
+ Some (var@5) -> ⊥ : bool ;
+ Some (var@6) -> ⊥ : &'_ (test1::List<i32>) ;
+ Some (var@7) -> ⊥ : &'_ (test1::List<i32>) ;
}
@@ -61778,17 +127702,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -61804,21 +127728,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+false
+
[Debug]
**About to evaluate statement**: [
var@7 := false;
@@ -61850,17 +127798,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> ⊥ : bool ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -61876,20 +127824,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> ⊥ : bool ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+- op:
+false
[Debug]
**About to evaluate statement**: [
@@ -61921,17 +127893,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -61947,21 +127919,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+true
+
[Debug]
**About to evaluate statement**: [
var@8 := true;
@@ -61991,17 +127987,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62017,21 +128013,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+true
+
[Debug]
**About to evaluate statement**: [
var@2 := discriminant(l);
@@ -62060,17 +128080,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62086,17 +128106,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> s@0 : test1::List<T> ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> s@0 : test1::List<T> ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62128,21 +128148,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> 0: isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> 0: isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> 0: isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
var@8 := false;
@@ -62163,17 +128207,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62189,21 +128233,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+false
+
[Debug]
**About to evaluate statement**: [
hd := move (l as test1::List::Cons).0;
@@ -62223,17 +128291,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62249,21 +128317,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = s@1 : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move (l as test1::List::Cons).0
+
[Debug]
**About to evaluate statement**: [
var@7 := false;
@@ -62282,17 +128374,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> s@1 : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62308,20 +128400,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> s@1 : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+- op:
+false
[Debug]
**About to evaluate statement**: [
@@ -62340,17 +128456,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> s@1 : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62366,21 +128482,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> s@1 : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = s@2 : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move (l as test1::List::Cons).1
+
[Debug]
**About to evaluate statement**: [
var@5 := move hd;
@@ -62397,17 +128537,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> s@1 : T ;
- tl -> s@2 : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> s@2 : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62423,21 +128563,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> s@1 : T ;
- tl -> s@2 : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> s@2 : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> s@1 : T ;
+ Some (tl) -> s@2 : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move hd
+
[Debug]
**About to evaluate statement**: [
var@6 := move deref_box(tl);
@@ -62453,17 +128617,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> s@2 : std::boxed::Box<test1::List<T>> ;
- var@5 -> s@1 : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> s@2 : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62479,21 +128643,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> s@2 : std::boxed::Box<test1::List<T>> ;
- var@5 -> s@1 : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> s@2 : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> s@2 : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move deref_box(tl)
+
[Debug] expand_symbolic_value: s@2 : std::boxed::Box<test1::List<T>>
- original context:
@@ -62502,17 +128690,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> s@2 : std::boxed::Box<test1::List<T>> ;
- var@5 -> s@1 : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> s@2 : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62522,17 +128710,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> @Box(s@3 : test1::List<T>) ;
- var@5 -> s@1 : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(s@3 : test1::List<T>) ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62550,17 +128738,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> @Box(⊥ : test1::List<T>) ;
- var@5 -> s@1 : T ;
- var@6 -> s@3 : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> s@3 : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62576,21 +128764,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> @Box(⊥ : test1::List<T>) ;
- var@5 -> s@1 : T ;
- var@6 -> s@3 : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> s@3 : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> s@1 : T ;
+ Some (var@6) -> s@3 : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move var@5
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjTuple 2), 0))
ty: (Types.Adt (Types.Tuple, [],
@@ -62610,17 +128822,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> (s@1 : T, ⊥ : test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> @Box(⊥ : test1::List<T>) ;
- var@5 -> ⊥ : T ;
- var@6 -> s@3 : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (s@1 : T, ⊥ : test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> s@3 : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62636,20 +128848,44 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> (s@1 : T, ⊥ : test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> @Box(⊥ : test1::List<T>) ;
- var@5 -> ⊥ : T ;
- var@6 -> s@3 : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (s@1 : T, ⊥ : test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> s@3 : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> (s@1 : T, ⊥ : test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> s@3 : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+- op:
+move var@6
[Debug]
**About to evaluate statement**: [
@@ -62663,17 +128899,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> (s@1 : T, s@3 : test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> @Box(⊥ : test1::List<T>) ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (s@1 : T, s@3 : test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62689,17 +128925,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> (s@1 : T, s@3 : test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> @Box(⊥ : test1::List<T>) ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (s@1 : T, s@3 : test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> @Box(⊥ : test1::List<T>) ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62721,17 +128957,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> (s@1 : T, s@3 : test1::List<T>) ;
- l -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> false ;
- var@8 -> false ;
- var@9 -> () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> (s@1 : T, s@3 : test1::List<T>) ;
+ Some (l) -> test1::List::Cons { 0 = ⊥ : T; 1 = ⊥ : std::boxed::Box<test1::List<T>>; } ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> false ;
+ Some (var@8) -> false ;
+ Some (var@9) -> () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62763,21 +128999,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Nil ;
- var@2 -> 1: isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Nil ;
+ Some (var@2) -> 1: isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Nil ;
+ Some (var@2) -> 1: isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
panic
@@ -62789,17 +129049,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : (T, test1::List<T>) ;
- l -> test1::List::Nil ;
- var@2 -> ⊥ : isize ;
- hd -> ⊥ : T ;
- tl -> ⊥ : std::boxed::Box<test1::List<T>> ;
- var@5 -> ⊥ : T ;
- var@6 -> ⊥ : test1::List<T> ;
- var@7 -> true ;
- var@8 -> true ;
- var@9 -> ⊥ : () ;
- var@10 -> ⊥ : isize ;
+ Some (var@0) -> ⊥ : (T, test1::List<T>) ;
+ Some (l) -> test1::List::Nil ;
+ Some (var@2) -> ⊥ : isize ;
+ Some (hd) -> ⊥ : T ;
+ Some (tl) -> ⊥ : std::boxed::Box<test1::List<T>> ;
+ Some (var@5) -> ⊥ : T ;
+ Some (var@6) -> ⊥ : test1::List<T> ;
+ Some (var@7) -> true ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : () ;
+ Some (var@10) -> ⊥ : isize ;
}
@@ -62830,17 +129090,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -62856,17 +129116,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -62895,17 +129155,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -62921,17 +129181,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> test1::List::Nil ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -62941,6 +129201,30 @@ ty: (Types.Adt (Types.Tuple, [],
- type_params: [test1::List<i32>]
- args: [move var@3]
- dest: var@2
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> test1::List::Nil ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
(l as test1::List::Cons).0 := 0: i32;
@@ -62964,17 +129248,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -62990,21 +129274,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjAdt (1, (Some 0))), 0))
ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
@@ -63030,17 +129338,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63056,21 +129364,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> s@0 : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = ⊥ : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> s@0 : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@2
+
[Debug]
**About to evaluate statement**: [
set_discriminant(l, 0);
@@ -63092,17 +129424,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63118,17 +129450,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63153,17 +129485,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63179,20 +129511,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+- op:
+move l
[Debug]
**About to evaluate statement**: [
@@ -63213,17 +129569,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63239,21 +129595,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> ⊥ : (i32, test1::List<i32>) ;
- var@7 -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> ⊥ : (i32, test1::List<i32>) ;
+ Some (var@7) -> test1::List::Cons { 0 = 0: i32; 1 = s@0 : std::boxed::Box<test1::List<i32>>; } ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
hd := copy (var@6).0;
@@ -63272,17 +129652,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> s@1 : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> s@1 : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63298,20 +129678,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> s@1 : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> s@1 : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> s@1 : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+- op:
+copy (var@6).0
[Debug] expand_symbolic_value: s@1 : (i32, test1::List<i32>)
@@ -63321,17 +129725,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> s@1 : (i32, test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> s@1 : (i32, test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63341,17 +129745,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> ⊥ : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (s@2 : i32, s@3 : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> ⊥ : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, s@3 : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63372,17 +129776,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (s@2 : i32, s@3 : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, s@3 : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63398,21 +129802,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (s@2 : i32, s@3 : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, s@3 : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, s@3 : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+move (var@6).1
+
[Debug]
**About to evaluate statement**: [
var@10 := copy hd;
@@ -63429,17 +129857,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63455,20 +129883,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+- op:
+copy hd
[Debug]
**About to evaluate statement**: [
@@ -63485,17 +129937,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> s@2 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@2 : i32 ;
}
@@ -63511,20 +129963,68 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> s@2 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@2 : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@2 : i32 ;
}
+- op:
+move var@10
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -63540,17 +130040,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> s@4 : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@4 : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63566,21 +130066,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> s@4 : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@4 : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@4 : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@9
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@8);
@@ -63594,17 +130118,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> s@5 : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> s@5 : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63620,21 +130144,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> s@5 : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> s@5 : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@8
+
[Debug]
**About to evaluate statement**: [
drop(tl);
@@ -63647,17 +130195,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63673,17 +130221,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> s@3 : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> s@3 : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63700,17 +130248,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- l -> ⊥ : test1::List<i32> ;
- var@2 -> ⊥ : std::boxed::Box<test1::List<i32>> ;
- var@3 -> ⊥ : test1::List<i32> ;
- hd -> s@2 : i32 ;
- tl -> ⊥ : test1::List<i32> ;
- var@6 -> (s@2 : i32, ⊥ : test1::List<i32>) ;
- var@7 -> ⊥ : test1::List<i32> ;
- var@8 -> ⊥ : bool ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (l) -> ⊥ : test1::List<i32> ;
+ Some (var@2) -> ⊥ : std::boxed::Box<test1::List<i32>> ;
+ Some (var@3) -> ⊥ : test1::List<i32> ;
+ Some (hd) -> s@2 : i32 ;
+ Some (tl) -> ⊥ : test1::List<i32> ;
+ Some (var@6) -> (s@2 : i32, ⊥ : test1::List<i32>) ;
+ Some (var@7) -> ⊥ : test1::List<i32> ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
}
@@ -63739,11 +130287,11 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> s@0 : bool ;
- x -> s@1 : &r@0 mut (T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> s@0 : bool ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -63764,15 +130312,38 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> s@0 : bool ;
- x -> s@1 : &r@0 mut (T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> s@0 : bool ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ proj_loans (s@0 : bool),
+ proj_loans (s@1 : &r@0 mut (T)),
+ proj_loans (s@2 : &r@0 mut (T))
+ }
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> s@0 : bool ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
+}
+
+
+- op:
+copy b
+
[Debug]
**About to evaluate statement**: [
if (move var@4) {
@@ -63795,11 +130366,11 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> s@0 : bool ;
- x -> s@1 : &r@0 mut (T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> s@0 : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> s@0 : bool ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> s@0 : bool ;
}
@@ -63825,14 +130396,37 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> s@0 : bool ;
- x -> s@1 : &r@0 mut (T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> s@0 : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> s@0 : bool ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> s@0 : bool ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ true,
+ proj_loans (s@1 : &r@0 mut (T)),
+ proj_loans (s@2 : &r@0 mut (T))
+ }
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> true ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> true ;
}
+- op:
+move var@4
[Debug]
**About to evaluate statement**: [
@@ -63850,11 +130444,11 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> true ;
- x -> s@1 : &r@0 mut (T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> true ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -63872,11 +130466,11 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> true ;
- x -> s@1 : &r@0 mut (T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> true ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -63891,14 +130485,37 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
⌊mut@0, proj_loans (s@3 : T)⌋,
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> true ;
- x -> &mut@0 (s@3 : T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@0 (s@3 : T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ false,
+ proj_loans (s@1 : &r@0 mut (T)),
+ proj_loans (s@2 : &r@0 mut (T))
+ }
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> false ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> false ;
+}
+
+
+- op:
+move var@4
+
[Debug]
**About to evaluate statement**: [
var@0 := move y
@@ -63915,15 +130532,38 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> ⊥ : &'_ mut (T) ;
- b -> false ;
- x -> s@1 : &r@0 mut (T) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> false ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ abs@0{parents={}}{regions={0}} {
+ false,
+ proj_loans (s@1 : &r@0 mut (T)),
+ proj_loans (s@2 : &r@0 mut (T))
+ }
+ Some (var@0) -> ⊥ : &'_ mut (T) ;
+ Some (b) -> false ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
+}
+
+
+- op:
+move y
+
[Debug]
**About to evaluate statement**: [
return
@@ -63940,11 +130580,11 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
⌊mut@0, proj_loans (s@3 : T)⌋,
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> &mut@1 (s@3 : T) ;
- b -> true ;
- x -> &mut@0 (⌊mut@1⌋) ;
- y -> s@2 : &r@0 mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> &mut@1 (s@3 : T) ;
+ Some (b) -> true ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (y) -> s@2 : &r@0 mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -63965,11 +130605,11 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
proj_loans (s@1 : &r@0 mut (T)),
proj_loans (s@2 : &r@0 mut (T))
}
- var@0 -> s@2 : &r@0 mut (T) ;
- b -> false ;
- x -> s@1 : &r@0 mut (T) ;
- y -> ⊥ : &'_ mut (T) ;
- var@4 -> ⊥ : bool ;
+ Some (var@0) -> s@2 : &r@0 mut (T) ;
+ Some (b) -> false ;
+ Some (x) -> s@1 : &r@0 mut (T) ;
+ Some (y) -> ⊥ : &'_ mut (T) ;
+ Some (var@4) -> ⊥ : bool ;
}
@@ -64007,25 +130647,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64041,28 +130681,60 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -64095,25 +130767,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64129,28 +130801,60 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> ⊥ : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> ⊥ : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -64182,25 +130886,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64216,25 +130920,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64268,25 +130972,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (0: i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (0: i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64302,25 +131006,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (0: i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (0: i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64353,25 +131057,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64387,25 +131091,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> 0: i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> 0: i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64437,25 +131141,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (0: i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64471,25 +131175,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (0: i32) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (0: i32) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64520,25 +131224,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⌊inactivated_mut@3⌋ ;
- var@7 -> &mut@2 (@shared_loan({3}, 0: i32)) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⌊inactivated_mut@3⌋ ;
+ Some (var@7) -> &mut@2 (@shared_loan({3}, 0: i32)) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -64554,37 +131258,129 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⌊inactivated_mut@1⌋ ;
- var@5 -> &mut@0 (@shared_loan({1}, 0: i32)) ;
- var@6 -> ⌊inactivated_mut@3⌋ ;
- var@7 -> &mut@2 (@shared_loan({3}, 0: i32)) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⌊inactivated_mut@1⌋ ;
+ Some (var@5) -> &mut@0 (@shared_loan({1}, 0: i32)) ;
+ Some (var@6) -> ⌊inactivated_mut@3⌋ ;
+ Some (var@7) -> &mut@2 (@shared_loan({3}, 0: i32)) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Concrete (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
+0: i32
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Concrete (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
+0: i32
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> &mut@1 (0: i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> &mut@3 (0: i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+true
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> &mut@1 (0: i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> &mut@3 (0: i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> &mut@3 (0: i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@8 := copy *(z);
@@ -64610,25 +131406,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> s@0 : &r@0 mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> s@0 : &r@0 mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64650,25 +131446,61 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> s@0 : &r@0 mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> s@0 : &r@0 mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ proj_loans (s@0 : &r@0 mut (i32))
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> s@0 : &r@0 mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64678,6 +131510,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
+- op:
+copy *(z)
[Debug] expand_symbolic_value: s@0 : &r@0 mut (i32)
@@ -64687,25 +131521,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> s@0 : &r@0 mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> s@0 : &r@0 mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64721,25 +131555,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@1 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@1 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64773,25 +131607,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@1 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@1 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64813,25 +131647,99 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@1 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@1 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@1 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+- op:
+copy var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@1 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64841,6 +131749,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -64865,25 +131775,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64905,25 +131815,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64934,6 +131844,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+- op:
+copy *(z)
+
[Debug]
**About to evaluate statement**: [
var@11 := move var@12 == 1: i32;
@@ -64956,25 +131904,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> s@2 : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@2 : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -64996,25 +131944,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> s@2 : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@2 : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65025,6 +131973,82 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@2 : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+- op:
+move var@12
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@10 := ¬ move var@11;
@@ -65046,25 +132070,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@3 : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@3 : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65086,25 +132110,61 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@3 : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@3 : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@3 : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65114,6 +132174,8 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
+- op:
+move var@11
[Debug]
**About to evaluate statement**: [
@@ -65135,25 +132197,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> s@4 : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> s@4 : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65175,25 +132237,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> s@4 : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> s@4 : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65204,6 +132266,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+- op:
+move var@10
+
[Debug]
**About to evaluate statement**: [
var@15 := copy x;
@@ -65223,25 +132323,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65263,25 +132363,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> &mut@0 (⌊mut@1⌋) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65292,6 +132392,114 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 1))
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 0)
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -65299,25 +132507,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@1⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65333,25 +132541,132 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@1⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+[Debug] give_back:
+- bid: 4
+- content: &mut@4 (s@2 : i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ &mut@1 (0: i32),
+ &mut@3 (0: i32),
+ ⌊mut@4, proj_loans (s@1 : i32)⌋
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 4
+- value: s@2 : i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65360,6 +132675,7 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
}
+
[Debug] end_abstraction: 0
- context after loans ended:
# Ended regions: {}
@@ -65367,25 +132683,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@1⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65394,6 +132710,80 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
}
}
+[Debug] give_back_value:
+- bid: 1
+- value: s@5 : i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ ⊥ : &r@0 mut (i32),
+ &mut@3 (0: i32),
+ @ended_mut_loan{ given_back=proj_borrows (s@2 : i32 <: i32); child=proj_loans (s@1 : i32) }
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: s@6 : i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (s@5 : i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ true,
+ ⊥ : &r@0 mut (i32),
+ ⊥ : &r@0 mut (i32),
+ @ended_mut_loan{ given_back=proj_borrows (s@2 : i32 <: i32); child=proj_loans (s@1 : i32) }
+ }
+}
+
+
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -65401,25 +132791,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@1⌋ ;
- y -> ⌊mut@2⌋ ;
- z -> &mut@4 (s@2 : i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (⌊mut@3⌋) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> &mut@4 (s@2 : i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (⌊mut@3⌋) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
true,
&mut@1 (0: i32),
@@ -65435,27 +132825,117 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (s@5 : i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> &mut@0 (s@5 : i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 0
+- content: &mut@0 (s@5 : i32)
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 0
+- value: s@5 : i32
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@14 := move var@15 == 1: i32;
@@ -65474,25 +132954,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> s@5 : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> s@5 : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -65508,29 +132988,93 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> s@5 : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> s@5 : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> s@5 : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@15
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@13 := ¬ move var@14;
@@ -65548,25 +133092,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> s@7 : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@7 : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -65582,28 +133126,60 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> s@7 : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@7 : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@7 : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@14
[Debug]
**About to evaluate statement**: [
@@ -65621,25 +133197,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> s@8 : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> s@8 : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -65655,29 +133231,61 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> s@8 : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> s@8 : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> true ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@13
+
[Debug]
**About to evaluate statement**: [
var@18 := copy y;
@@ -65693,25 +133301,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -65727,29 +133335,151 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> ⌊mut@2⌋ ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> &mut@2 (s@6 : i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy y
+
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> &mut@2 (s@6 : i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 2
+- content: &mut@2 (s@6 : i32)
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+[Debug] give_back_value:
+- bid: 2
+- value: s@6 : i32
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> ⌊mut@2⌋ ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@17 := move var@18 == 0: i32;
@@ -65764,25 +133494,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> s@6 : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> s@6 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> s@6 : i32 ;
}
@@ -65798,28 +133528,92 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> s@6 : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> s@6 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> s@6 : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> s@6 : i32 ;
+}
+
+
+- op:
+move var@18
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -65834,25 +133628,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> s@6 : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> s@9 : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@9 : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -65868,28 +133662,60 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> s@6 : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> s@9 : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@9 : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@9 : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+- op:
+move var@17
[Debug]
**About to evaluate statement**: [
@@ -65903,25 +133729,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> s@6 : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> s@10 : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> s@10 : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -65937,29 +133763,61 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> s@6 : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> s@10 : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> s@10 : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> true ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@16
+
[Debug]
**About to evaluate statement**: [
return
@@ -65971,25 +133829,25 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@5 : i32 ;
- y -> s@6 : i32 ;
- z -> ⊥ : &'_ mut (i32) ;
- var@4 -> ⊥ : &'_ mut (i32) ;
- var@5 -> ⊥ : &'_ mut (i32) ;
- var@6 -> ⊥ : &'_ mut (i32) ;
- var@7 -> ⊥ : &'_ mut (i32) ;
- var@8 -> s@1 : i32 ;
- var@9 -> ⊥ : (i32, bool) ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : i32 ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : i32 ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : bool ;
- var@18 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@5 : i32 ;
+ Some (y) -> s@6 : i32 ;
+ Some (z) -> ⊥ : &'_ mut (i32) ;
+ Some (var@4) -> ⊥ : &'_ mut (i32) ;
+ Some (var@5) -> ⊥ : &'_ mut (i32) ;
+ Some (var@6) -> ⊥ : &'_ mut (i32) ;
+ Some (var@7) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> s@1 : i32 ;
+ Some (var@9) -> ⊥ : (i32, bool) ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : i32 ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : i32 ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : bool ;
+ Some (var@18) -> ⊥ : i32 ;
}
@@ -66014,9 +133872,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@1{parents={0}}{regions={1}} {
proj_loans (s@0 : &r@0 mut (&r@1 mut (T)))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (T)) ;
- x -> s@0 : &r@0 mut (&r@1 mut (T)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (x) -> s@0 : &r@0 mut (&r@1 mut (T)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (T)) ;
}
@@ -66038,9 +133896,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@1{parents={0}}{regions={1}} {
proj_loans (s@0 : &r@0 mut (&r@1 mut (T)))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (T)) ;
- x -> s@0 : &r@0 mut (&r@1 mut (T)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (x) -> s@0 : &r@0 mut (&r@1 mut (T)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (T)) ;
}
@@ -66059,9 +133917,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@1{parents={0}}{regions={1}} {
proj_loans (s@0 : &r@0 mut (&r@1 mut (T)))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (T)) ;
- x -> s@0 : &r@0 mut (&r@1 mut (T)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (x) -> s@0 : &r@0 mut (&r@1 mut (T)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (T)) ;
}
@@ -66077,9 +133935,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@1{parents={0}}{regions={1}} {
@ignored_mut_loan(0, proj_loans (s@1 : &r@1 mut (T)))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (T)) ;
- x -> &mut@0 (s@1 : &r@1 mut (T)) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (x) -> &mut@0 (s@1 : &r@1 mut (T)) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (T)) ;
}
@@ -66101,9 +133959,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@1{parents={0}}{regions={1}} {
@ignored_mut_loan(0, proj_loans (s@1 : &r@1 mut (T)))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (T)) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : &r@1 mut (T)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : &r@1 mut (T)) ;
}
@@ -66125,9 +133983,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@1{parents={0}}{regions={1}} {
@ignored_mut_loan(0, proj_loans (s@1 : &r@1 mut (T)))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (T)) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : &r@1 mut (T)) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (T)) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : &r@1 mut (T)) ;
}
@@ -66149,9 +134007,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@1{parents={0}}{regions={1}} {
@ignored_mut_loan(0, proj_loans (s@1 : &r@1 mut (T)))
}
- var@0 -> &mut@2 (s@1 : &r@1 mut (T)) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (⌊mut@2⌋) ;
+ Some (var@0) -> &mut@2 (s@1 : &r@1 mut (T)) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (⌊mut@2⌋) ;
}
@@ -66173,9 +134031,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut ((&r@0 mut (T), u32)))
}
- var@0 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
- x -> s@0 : &r@0 mut ((&r@0 mut (T), u32)) ;
- var@2 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (x) -> s@0 : &r@0 mut ((&r@0 mut (T), u32)) ;
+ Some (var@2) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
}
@@ -66194,9 +134052,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut ((&r@0 mut (T), u32)))
}
- var@0 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
- x -> s@0 : &r@0 mut ((&r@0 mut (T), u32)) ;
- var@2 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (x) -> s@0 : &r@0 mut ((&r@0 mut (T), u32)) ;
+ Some (var@2) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
}
@@ -66212,9 +134070,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut ((&r@0 mut (T), u32)))
}
- var@0 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
- x -> s@0 : &r@0 mut ((&r@0 mut (T), u32)) ;
- var@2 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (x) -> s@0 : &r@0 mut ((&r@0 mut (T), u32)) ;
+ Some (var@2) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
}
@@ -66227,9 +134085,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : (&r@0 mut (T), u32))⌋
}
- var@0 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
- x -> &mut@0 (s@1 : (&r@0 mut (T), u32)) ;
- var@2 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (x) -> &mut@0 (s@1 : (&r@0 mut (T), u32)) ;
+ Some (var@2) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
}
@@ -66248,9 +134106,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : (&r@0 mut (T), u32))⌋
}
- var@0 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : (&r@0 mut (T), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : (&r@0 mut (T), u32)) ;
}
@@ -66269,9 +134127,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : (&r@0 mut (T), u32))⌋
}
- var@0 -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : (&r@0 mut (T), u32)) ;
+ Some (var@0) -> ⊥ : &'_ mut ((&'_ mut (T), u32)) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : (&r@0 mut (T), u32)) ;
}
@@ -66290,9 +134148,9 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : (&r@0 mut (T), u32))⌋
}
- var@0 -> &mut@2 (s@1 : (&r@0 mut (T), u32)) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (⌊mut@2⌋) ;
+ Some (var@0) -> &mut@2 (s@1 : (&r@0 mut (T), u32)) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (⌊mut@2⌋) ;
}
@@ -66322,17 +134180,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66348,21 +134206,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+- op:
+0: u32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -66386,17 +134268,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66412,17 +134294,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: u32 ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: u32 ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66449,17 +134331,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66475,20 +134357,44 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+- op:
+move px
[Debug]
**About to evaluate statement**: [
@@ -66511,17 +134417,17 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> &mut@0 (0: u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> &mut@0 (0: u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66537,21 +134443,45 @@ ty: (Types.Adt ((Types.AdtId 1), [], [(Types.Integer Types.I32)]))
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⊥ : (&'_ mut (u32), u32) ;
- var@4 -> &mut@0 (0: u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> &mut@0 (0: u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⊥ : (&'_ mut (u32), u32) ;
+ Some (var@4) -> &mut@0 (0: u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+- op:
+move var@4
+
[Debug] expand_bottom_value_from_projection:
pe: (Expressions.Field ((Expressions.ProjTuple 2), 0))
ty: (Types.Adt (Types.Tuple, [],
@@ -66578,17 +134508,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), ⊥ : u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), ⊥ : u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66604,20 +134534,44 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), ⊥ : u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), ⊥ : u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), ⊥ : u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
+- op:
+1: u32
[Debug]
**About to evaluate statement**: [
@@ -66638,17 +134592,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), 1: u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), 1: u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66664,17 +134618,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> (&mut@0 (0: u32), 1: u32) ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> (&mut@0 (0: u32), 1: u32) ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66697,17 +134651,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66723,17 +134677,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66755,17 +134709,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
@@ -66781,48 +134735,47 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
- pp1 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- var@7 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (@shared_loan({2}, (&mut@0 (0: u32), 1: u32))) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Adt
- { Values.variant_id = <opaque>;
- field_values =
- [{ Values.value =
- (Values.Borrow
- (Values.MutBorrow (<opaque>,
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 0; int_ty = Types.U32 }));
- ty = (Types.Integer Types.U32) }
- )));
- ty =
- (Types.Ref (Types.Erased, (Types.Integer Types.U32), Types.Mut)) };
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 1; int_ty = Types.U32 }));
- ty = (Types.Integer Types.U32) }
- ]
- });
- ty =
- (Types.Adt (Types.Tuple, [],
- [(Types.Ref (Types.Erased, (Types.Integer Types.U32), Types.Mut));
- (Types.Integer Types.U32)]
- ))
- }
+(&mut@0 (0: u32), 1: u32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (var@7) -> &mut@2 ((&mut@0 (0: u32), 1: u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
y := 2: u32;
@@ -66839,17 +134792,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -66869,17 +134822,43 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⊥ : u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 ((&mut@0 (0: u32), 1: u32)),
+ proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⊥ : u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -66887,6 +134866,8 @@ ty: (Types.Adt (Types.Tuple, [],
}
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -66903,17 +134884,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> 2: u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> 2: u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -66933,17 +134914,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> 2: u32 ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> ⊥ : &'_ mut (u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> 2: u32 ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> ⊥ : &'_ mut (u32) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -66966,17 +134947,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (2: u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (2: u32) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -66996,17 +134977,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (2: u32) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (2: u32) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -67028,17 +135009,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> &mut@4 (2: u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> &mut@4 (2: u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -67058,17 +135039,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> &mut@4 (2: u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> &mut@4 (2: u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
@@ -67077,6 +135058,34 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> &mut@4 (2: u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 ((&mut@0 (0: u32), 1: u32)),
+ proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
+ }
+}
+
+
+- op:
+move var@9
+
[Debug] expand_symbolic_value: s@0 : &r@0 mut ((&r@0 mut (u32), u32))
- original context:
@@ -67085,21 +135094,22 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> s@0 : &r@0 mut ((&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
proj_loans (s@0 : &r@0 mut ((&r@0 mut (u32), u32)))
}
+ None -> &mut@4 (2: u32) ;
}
@@ -67109,21 +135119,22 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> &mut@5 (s@1 : (&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@5 (s@1 : (&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
⌊mut@5, proj_loans (s@1 : (&r@0 mut (u32), u32))⌋
}
+ None -> &mut@4 (2: u32) ;
}
@@ -67135,21 +135146,22 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> &mut@5 (s@1 : (&r@0 mut (u32), u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@5 (s@1 : (&r@0 mut (u32), u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
⌊mut@5, proj_loans (s@1 : (&r@0 mut (u32), u32))⌋
}
+ None -> &mut@4 (2: u32) ;
}
@@ -67159,21 +135171,22 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> &mut@5 ((s@2 : &r@0 mut (u32), s@3 : u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@5 ((s@2 : &r@0 mut (u32), s@3 : u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
⌊mut@5, (proj_loans (s@2 : &r@0 mut (u32)), proj_loans (s@3 : u32))⌋
}
+ None -> &mut@4 (2: u32) ;
}
@@ -67189,17 +135202,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> &mut@5 ((&mut@4 (2: u32), s@3 : u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@5 ((&mut@4 (2: u32), s@3 : u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
⌊mut@5, (proj_loans (s@2 : &r@0 mut (u32)), proj_loans (s@3 : u32))⌋
@@ -67219,17 +135232,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> &mut@5 ((&mut@4 (2: u32), s@3 : u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@5 ((&mut@4 (2: u32), s@3 : u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
⌊mut@5, (proj_loans (s@2 : &r@0 mut (u32)), proj_loans (s@3 : u32))⌋
@@ -67238,6 +135251,34 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@5 ((&mut@4 (2: u32), s@3 : u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 ((&mut@0 (0: u32), 1: u32)),
+ ⌊mut@5, (proj_loans (s@2 : &r@0 mut (u32)), proj_loans (s@3 : u32))⌋
+ }
+}
+
+
+- op:
+3: u32
+
[Debug]
**About to evaluate statement**: [
return
@@ -67249,17 +135290,17 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (u32) ;
- p -> ⌊mut@1⌋ ;
- var@4 -> ⊥ : &'_ mut (u32) ;
- pp0 -> &mut@1 (⌊mut@2⌋) ;
- pp1 -> &mut@5 ((&mut@4 (2: u32), 3: u32)) ;
- var@7 -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
- y -> ⌊mut@3⌋ ;
- var@9 -> ⊥ : &'_ mut (u32) ;
- var@10 -> &mut@3 (⌊mut@4⌋) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (u32) ;
+ Some (p) -> ⌊mut@1⌋ ;
+ Some (var@4) -> ⊥ : &'_ mut (u32) ;
+ Some (pp0) -> &mut@1 (⌊mut@2⌋) ;
+ Some (pp1) -> &mut@5 ((&mut@4 (2: u32), 3: u32)) ;
+ Some (var@7) -> ⊥ : &'_ mut ((&'_ mut (u32), u32)) ;
+ Some (y) -> ⌊mut@3⌋ ;
+ Some (var@9) -> ⊥ : &'_ mut (u32) ;
+ Some (var@10) -> &mut@3 (⌊mut@4⌋) ;
abs@0{parents={}}{regions={0}} {
&mut@2 ((&mut@0 (0: u32), 1: u32)),
⌊mut@5, (proj_loans (s@2 : &r@0 mut (u32)), proj_loans (s@3 : u32))⌋
@@ -67285,9 +135326,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
- x -> s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (x) -> s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
}
@@ -67306,9 +135347,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
- x -> s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (x) -> s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
}
@@ -67324,9 +135365,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
- x -> s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (x) -> s@0 : &r@0 mut (&r@0 mut ((&r@0 mut (T), u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
}
@@ -67339,9 +135380,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut ((&r@0 mut (T), u32)))⌋
}
- var@0 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
- x -> &mut@0 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (x) -> &mut@0 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
}
@@ -67360,9 +135401,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut ((&r@0 mut (T), u32)))⌋
}
- var@0 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
}
@@ -67381,9 +135422,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut ((&r@0 mut (T), u32)))⌋
}
- var@0 -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut ((&'_ mut (T), u32))) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
}
@@ -67402,9 +135443,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut ((&r@0 mut (T), u32)))⌋
}
- var@0 -> &mut@2 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (⌊mut@2⌋) ;
+ Some (var@0) -> &mut@2 (s@1 : &r@0 mut ((&r@0 mut (T), u32))) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (⌊mut@2⌋) ;
}
@@ -67426,9 +135467,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
- x -> s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (x) -> s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
}
@@ -67447,9 +135488,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
- x -> s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (x) -> s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
}
@@ -67465,9 +135506,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
proj_loans (s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))))
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
- x -> s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (x) -> s@0 : &r@0 mut (&r@0 mut (&r@0 mut (u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
}
@@ -67480,9 +135521,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut (&r@0 mut (u32)))⌋
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
- x -> &mut@0 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
- var@2 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (x) -> &mut@0 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
+ Some (var@2) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
}
@@ -67501,9 +135542,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut (&r@0 mut (u32)))⌋
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
}
@@ -67522,9 +135563,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut (&r@0 mut (u32)))⌋
}
- var@0 -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
+ Some (var@0) -> ⊥ : &'_ mut (&'_ mut (&'_ mut (u32))) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
}
@@ -67543,9 +135584,9 @@ ty: (Types.Adt (Types.Tuple, [],
abs@0{parents={}}{regions={0}} {
⌊mut@0, proj_loans (s@1 : &r@0 mut (&r@0 mut (u32)))⌋
}
- var@0 -> &mut@2 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
- x -> &mut@0 (⌊mut@1⌋) ;
- var@2 -> &mut@1 (⌊mut@2⌋) ;
+ Some (var@0) -> &mut@2 (s@1 : &r@0 mut (&r@0 mut (u32))) ;
+ Some (x) -> &mut@0 (⌊mut@1⌋) ;
+ Some (var@2) -> &mut@1 (⌊mut@2⌋) ;
}
@@ -67570,9 +135611,9 @@ ty: (Types.Adt (Types.Tuple, [],
proj_loans (s@0 : &r@0 mut (&r@1 (u32))),
proj_loans (s@1 : &r@0 (&r@0 mut (u32)))
}
- var@0 -> ⊥ : () ;
- _x -> s@0 : &r@0 mut (&r@1 (u32)) ;
- _y -> s@1 : &r@0 (&r@0 mut (u32)) ;
+ Some (var@0) -> ⊥ : () ;
+ Some (_x) -> s@0 : &r@0 mut (&r@1 (u32)) ;
+ Some (_y) -> s@1 : &r@0 (&r@0 mut (u32)) ;
}
@@ -67590,8 +135631,8 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : &'_ (u32) ;
- x -> s@0 : &'static (u32) ;
+ Some (var@0) -> ⊥ : &'_ (u32) ;
+ Some (x) -> s@0 : &'static (u32) ;
}
@@ -67607,11 +135648,26 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : &'_ (u32) ;
- x -> s@0 : &'static (u32) ;
+ Some (var@0) -> ⊥ : &'_ (u32) ;
+ Some (x) -> s@0 : &'static (u32) ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : &'_ (u32) ;
+ Some (x) -> s@0 : &'static (u32) ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -67624,8 +135680,8 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> s@0 : &'static (u32) ;
- x -> s@0 : &'static (u32) ;
+ Some (var@0) -> s@0 : &'static (u32) ;
+ Some (x) -> s@0 : &'static (u32) ;
}
@@ -67643,7 +135699,7 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : char ;
+ Some (var@0) -> ⊥ : char ;
}
@@ -67659,11 +135715,25 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : char ;
+ Some (var@0) -> ⊥ : char ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : char ;
+}
+
+
+- op:
+a
+
[Debug]
**About to evaluate statement**: [
return
@@ -67675,7 +135745,7 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> a ;
+ Some (var@0) -> a ;
}
@@ -67722,31 +135792,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -67762,34 +135832,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -67831,31 +135939,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -67871,35 +135979,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@3 := move var@4 == 2: u32;
@@ -67939,31 +136085,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> s@0 : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -67979,35 +136125,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> s@0 : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> s@0 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@4
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+2: u32
+
[Debug]
**About to evaluate statement**: [
var@2 := ¬ move var@3;
@@ -68046,31 +136268,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> s@1 : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> s@1 : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68086,35 +136308,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> s@1 : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> s@1 : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> s@1 : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@3
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@2);
@@ -68152,31 +136412,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> s@2 : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> s@2 : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68192,34 +136452,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> s@2 : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> s@2 : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> true ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+move var@2
[Debug]
**About to evaluate statement**: [
@@ -68257,31 +136555,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68297,34 +136595,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -68361,31 +136697,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68401,34 +136737,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -68464,31 +136838,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@3 : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@3 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68504,35 +136878,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@3 : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@3 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@3 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+1: u32
+
[Debug]
**About to evaluate statement**: [
var@6 := ¬ move var@7;
@@ -68566,31 +137016,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> s@4 : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@4 : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68606,34 +137056,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> s@4 : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@4 : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@4 : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+move var@7
[Debug]
**About to evaluate statement**: [
@@ -68667,31 +137155,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> s@5 : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> s@5 : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68707,35 +137195,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> s@5 : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> s@5 : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> true ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
x := move test_loop3(2: u32);
@@ -68767,31 +137293,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68807,34 +137333,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -68866,31 +137430,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -68906,35 +137470,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@11 := move var@12 == 3: u32;
@@ -68964,31 +137566,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> s@6 : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@6 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69004,34 +137606,110 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> s@6 : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@6 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@6 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+move var@12
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+3: u32
[Debug]
**About to evaluate statement**: [
@@ -69061,31 +137739,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@7 : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@7 : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69101,35 +137779,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@7 : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@7 : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@7 : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@11
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@10);
@@ -69157,31 +137873,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> s@8 : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> s@8 : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69197,35 +137913,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> s@8 : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> s@8 : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> true ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@10
+
[Debug]
**About to evaluate statement**: [
x := move test_loop4(20: u32);
@@ -69252,31 +138006,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69292,35 +138046,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+20: u32
+
[Debug]
**About to evaluate statement**: [
var@16 := copy x;
@@ -69346,31 +138138,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69386,35 +138178,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@15 := move var@16 == 1: u32;
@@ -69439,31 +138269,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> s@9 : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> s@9 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69479,35 +138309,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> s@9 : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> s@9 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> s@9 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@16
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+1: u32
+
[Debug]
**About to evaluate statement**: [
var@14 := ¬ move var@15;
@@ -69531,31 +138437,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> s@10 : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> s@10 : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69571,35 +138477,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> s@10 : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> s@10 : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> s@10 : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@15
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@14);
@@ -69622,31 +138566,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> s@11 : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> s@11 : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69662,34 +138606,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> s@11 : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> s@11 : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> true ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+move var@14
[Debug]
**About to evaluate statement**: [
@@ -69712,31 +138694,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69752,35 +138734,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+2: u32
+
[Debug]
**About to evaluate statement**: [
var@20 := copy x;
@@ -69801,31 +138821,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69841,35 +138861,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+copy x
+
[Debug]
**About to evaluate statement**: [
var@19 := move var@20 == 2: u32;
@@ -69889,31 +138947,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> s@12 : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> s@12 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -69929,34 +138987,110 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> s@12 : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> s@12 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> s@12 : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+move var@20
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+2: u32
[Debug]
**About to evaluate statement**: [
@@ -69976,31 +139110,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> s@13 : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> s@13 : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -70016,34 +139150,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> s@13 : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> s@13 : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> s@13 : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+move var@19
[Debug]
**About to evaluate statement**: [
@@ -70062,31 +139234,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> s@14 : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> s@14 : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -70102,35 +139274,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> s@14 : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> s@14 : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> true ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@18
+
[Debug]
**About to evaluate statement**: [
x := move test_loop6(2: u32);
@@ -70147,31 +139357,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -70187,35 +139397,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> ⊥ : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> ⊥ : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+2: u32
+
[Debug]
**About to evaluate statement**: [
var@24 := copy x;
@@ -70231,31 +139479,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -70271,34 +139519,72 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+- op:
+copy x
[Debug]
**About to evaluate statement**: [
@@ -70314,31 +139600,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> s@15 : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> s@15 : u32 ;
}
@@ -70354,35 +139640,111 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> s@15 : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> s@15 : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> s@15 : u32 ;
+}
+
+
+- op:
+move var@24
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+2: u32
+
[Debug]
**About to evaluate statement**: [
var@22 := ¬ move var@23;
@@ -70396,31 +139758,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> s@16 : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> s@16 : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -70436,35 +139798,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> s@16 : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> s@16 : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> s@16 : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@23
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@22);
@@ -70477,31 +139877,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> s@17 : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> s@17 : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -70517,35 +139917,73 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> s@17 : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> s@17 : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> true ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
+}
+
+
+- op:
+move var@22
+
[Debug]
**About to evaluate statement**: [
return
@@ -70557,31 +139995,31 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@0 : u32 ;
- var@2 -> ⊥ : bool ;
- var@3 -> ⊥ : bool ;
- var@4 -> ⊥ : u32 ;
- x -> s@3 : u32 ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : u32 ;
- x -> s@6 : u32 ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : bool ;
- var@12 -> ⊥ : u32 ;
- x -> s@9 : u32 ;
- var@14 -> ⊥ : bool ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : u32 ;
- x -> s@12 : u32 ;
- var@18 -> ⊥ : bool ;
- var@19 -> ⊥ : bool ;
- var@20 -> ⊥ : u32 ;
- x -> s@15 : u32 ;
- var@22 -> ⊥ : bool ;
- var@23 -> ⊥ : bool ;
- var@24 -> ⊥ : u32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@0 : u32 ;
+ Some (var@2) -> ⊥ : bool ;
+ Some (var@3) -> ⊥ : bool ;
+ Some (var@4) -> ⊥ : u32 ;
+ Some (x) -> s@3 : u32 ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : u32 ;
+ Some (x) -> s@6 : u32 ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : u32 ;
+ Some (x) -> s@9 : u32 ;
+ Some (var@14) -> ⊥ : bool ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : u32 ;
+ Some (x) -> s@12 : u32 ;
+ Some (var@18) -> ⊥ : bool ;
+ Some (var@19) -> ⊥ : bool ;
+ Some (var@20) -> ⊥ : u32 ;
+ Some (x) -> s@15 : u32 ;
+ Some (var@22) -> ⊥ : bool ;
+ Some (var@23) -> ⊥ : bool ;
+ Some (var@24) -> ⊥ : u32 ;
}
@@ -70612,18 +140050,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70639,21 +140077,46 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
+- op:
+0: i32
[Debug]
**About to evaluate statement**: [
@@ -70679,18 +140142,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70706,18 +140169,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70745,18 +140208,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70772,18 +140235,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70810,18 +140273,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70837,18 +140300,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70874,18 +140337,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -70901,32 +140364,49 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Borrow
- (Values.MutBorrow (<opaque>,
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
- )));
- ty = (Types.Ref (Types.Erased, (Types.Integer Types.I32), Types.Mut)) }
+&mut@0 (0: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
*(*(ppy)) := 1: i32;
@@ -70947,18 +140427,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
@@ -70982,18 +140462,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
@@ -71006,6 +140486,39 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+}
+
+
+- op:
+1: i32
+
[Debug] expand_symbolic_value: s@0 : &r@0 mut (&r@1 mut (i32))
- original context:
@@ -71014,18 +140527,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
@@ -71034,6 +140547,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
}
+ None -> 1: i32 ;
}
@@ -71043,18 +140557,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (s@1 : &r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@1 : &r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, proj_loans (s@1 : &r@1 mut (i32))⌋
@@ -71063,6 +140577,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
@ignored_mut_loan(3, proj_loans (s@1 : &r@1 mut (i32)))
}
+ None -> 1: i32 ;
}
@@ -71074,18 +140589,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (s@1 : &r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@1 : &r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, proj_loans (s@1 : &r@1 mut (i32))⌋
@@ -71094,6 +140609,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
@ignored_mut_loan(3, proj_loans (s@1 : &r@1 mut (i32)))
}
+ None -> 1: i32 ;
}
@@ -71103,18 +140619,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (s@2 : i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (s@2 : i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -71123,6 +140639,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
@ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
}
+ None -> 1: i32 ;
}
@@ -71145,18 +140662,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -71180,18 +140697,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -71204,6 +140721,99 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+- op:
+copy *(px)
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 2))
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 0)
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -71211,18 +140821,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -71240,18 +140850,78 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (&mut@4 (1: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -71262,6 +140932,39 @@ ty: (Types.Adt (Types.Tuple, [],
}
}
+
+[Debug] give_back_value:
+- bid: 3
+- value: &mut@4 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
[Debug] end_abstraction: 0
- context after loans ended:
# Ended regions: {}
@@ -71269,18 +140972,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
@ended_mut_loan{ given_back=@ignored_mut_borrow(None, 1: i32); child=@ignored_mut_loan(4, proj_loans (s@2 : i32)) }
@@ -71291,6 +140994,38 @@ ty: (Types.Adt (Types.Tuple, [],
}
}
+[Debug] give_back_value:
+- bid: 2
+- value: s@3 : &r@1 mut (i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ ⊥ : &r@0 mut (&r@1 mut (i32)),
+ @ended_mut_loan{ given_back=@ignored_mut_borrow(None, 1: i32); child=@ignored_mut_loan(4, proj_loans (s@2 : i32)) }
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -71298,18 +141033,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -71327,24 +141062,105 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> s@3 : &r@1 mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (s@3 : &r@1 mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (s@3 : &r@1 mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
}
}
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (s@3 : &r@1 mut (i32))
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: s@3 : &r@1 mut (i32)
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
[Debug] expand_symbolic_value: s@3 : &r@1 mut (i32)
- original context:
@@ -71353,18 +141169,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> s@3 : &r@1 mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> s@3 : &r@1 mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71378,18 +141194,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71415,18 +141231,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@4 : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@4 : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71446,18 +141262,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> s@4 : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@4 : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71466,6 +141282,64 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> s@4 : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
+- op:
+move var@8
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@6 := ¬ move var@7;
@@ -71483,18 +141357,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> s@5 : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@5 : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71514,18 +141388,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> s@5 : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@5 : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71534,6 +141408,35 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> s@5 : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
+- op:
+move var@7
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@6);
@@ -71550,18 +141453,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> s@6 : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> s@6 : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71581,18 +141484,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> s@6 : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> s@6 : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71601,6 +141504,35 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> true ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
+- op:
+move var@6
+
[Debug]
**About to evaluate statement**: [
var@11 := copy x;
@@ -71616,18 +141548,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71647,18 +141579,45 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71666,7 +141625,35 @@ ty: (Types.Adt (Types.Tuple, [],
}
+- op:
+copy x
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 1)
[Debug] end_abstraction: 1
- original context:
# Ended regions: {0}
@@ -71674,18 +141661,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71699,24 +141686,184 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 5:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+[Debug] give_back:
+- bid: 5
+- content: &mut@5 (s@4 : i32)
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 5
+- value: s@4 : i32
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
}
}
+
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@4 : i32 <: i32); child=proj_loans (s@4 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 4: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 1)
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@4 : i32 <: i32); child=proj_loans (s@4 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+[Debug] give_back:
+- bid: 4
+- content: &mut@4 (1: i32)
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@4 : i32 <: i32); child=proj_loans (s@4 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=⊥ : &r@1 mut (i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+}
+
+
[Debug] end_abstraction: 1
- context after loans ended:
# Ended regions: {0}
@@ -71724,24 +141871,52 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@4 : i32 <: i32); child=proj_loans (s@4 : i32) }; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=⊥ : &r@1 mut (i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
}
}
+[Debug] give_back_value:
+- bid: 0
+- value: s@7 : i32
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@4 : i32 <: i32); child=proj_loans (s@4 : i32) }; child=⊥ : &r@1 mut (i32)),
+ @ended_ignored_mut_loan{ given_back=⊥ : &r@1 mut (i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
[Debug] end_abstraction: 1
- original context:
# Ended regions: {0}
@@ -71749,18 +141924,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@5 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@5 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@5, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@4 (1: i32); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
@@ -71774,18 +141949,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
[Debug]
@@ -71802,18 +141977,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@7 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@7 : i32 ;
}
@@ -71829,21 +142004,71 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@7 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@7 : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@7 : i32 ;
}
+- op:
+move var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+}
+
+
+- op:
+1: i32
[Debug]
**About to evaluate statement**: [
@@ -71858,18 +142083,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> s@8 : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@8 : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -71885,21 +142110,46 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> s@8 : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@8 : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@8 : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
+- op:
+move var@10
[Debug]
**About to evaluate statement**: [
@@ -71913,18 +142163,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> s@9 : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> s@9 : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -71940,22 +142190,47 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> s@9 : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> s@9 : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@9
+
[Debug]
**About to evaluate statement**: [
return
@@ -71967,18 +142242,18 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@6 -> ⊥ : bool ;
- var@7 -> ⊥ : bool ;
- var@8 -> ⊥ : i32 ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@6) -> ⊥ : bool ;
+ Some (var@7) -> ⊥ : bool ;
+ Some (var@8) -> ⊥ : i32 ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
}
@@ -72018,24 +142293,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72051,28 +142326,59 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⊥ : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
[Debug]
**About to evaluate statement**: [
px := &mut x;
@@ -72106,24 +142412,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72139,24 +142445,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> 0: i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72193,24 +142499,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72226,24 +142532,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@0 (0: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72279,24 +142585,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72312,24 +142618,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (&mut@0 (0: i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72364,24 +142670,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -72397,38 +142703,61 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⌊inactivated_mut@2⌋ ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
[Debug] activate_inactivated_mut_borrow: resulting value:
-{ Values.value =
- (Values.Borrow
- (Values.MutBorrow (<opaque>,
- { Values.value =
- (Values.Concrete
- (Values.Scalar { Values.value = 0; int_ty = Types.I32 }));
- ty = (Types.Integer Types.I32) }
- )));
- ty = (Types.Ref (Types.Erased, (Types.Integer Types.I32), Types.Mut)) }
+&mut@0 (0: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
[Debug]
**About to evaluate statement**: [
*(*(ppy)) := 1: i32;
@@ -72458,24 +142787,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
@@ -72499,24 +142828,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
@@ -72529,6 +142858,45 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+}
+
+
+- op:
+1: i32
+
[Debug] expand_symbolic_value: s@0 : &r@0 mut (&r@1 mut (i32))
- original context:
@@ -72537,24 +142905,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
@@ -72563,6 +142931,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
}
+ None -> 1: i32 ;
}
@@ -72572,24 +142941,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (s@1 : &r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@1 : &r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, proj_loans (s@1 : &r@1 mut (i32))⌋
@@ -72598,6 +142967,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
@ignored_mut_loan(3, proj_loans (s@1 : &r@1 mut (i32)))
}
+ None -> 1: i32 ;
}
@@ -72609,24 +142979,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (s@1 : &r@1 mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@1 : &r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, proj_loans (s@1 : &r@1 mut (i32))⌋
@@ -72635,6 +143005,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
@ignored_mut_loan(3, proj_loans (s@1 : &r@1 mut (i32)))
}
+ None -> 1: i32 ;
}
@@ -72644,24 +143015,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (s@2 : i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (s@2 : i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -72670,6 +143041,7 @@ ty: (Types.Adt (Types.Tuple, [],
@ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
@ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
}
+ None -> 1: i32 ;
}
@@ -72701,24 +143073,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -72742,24 +143114,61 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⊥ : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⊥ : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -72771,6 +143180,8 @@ ty: (Types.Adt (Types.Tuple, [],
}
+- op:
+2: i32
[Debug]
**About to evaluate statement**: [
@@ -72799,24 +143210,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 2: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 2: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -72840,24 +143251,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> 2: i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> 2: i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -72896,24 +143307,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (2: i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (2: i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -72937,24 +143348,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (2: i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (2: i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -72992,24 +143403,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> &mut@6 (2: i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> &mut@6 (2: i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -73033,24 +143444,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@4 (1: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> &mut@6 (2: i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> &mut@6 (2: i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
@@ -73063,6 +143474,162 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> &mut@6 (2: i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+- op:
+move var@8
+
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⊥ : &'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ None -> &mut@6 (2: i32) ;
+ None -> &mut@4 (1: i32) ;
+}
+
+[Debug] give_back:
+- bid: 4
+- content: &mut@4 (1: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⊥ : &'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ None -> &mut@6 (2: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+}
+
+
+[Debug] give_back_value:
+- bid: 4
+- value: 1: i32
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⊥ : &'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ None -> &mut@6 (2: i32) ;
+ None -> ⊥ : &'_ mut (i32) ;
+}
+
+
[Debug]
**About to evaluate statement**: [
var@11 := copy *(px);
@@ -73087,24 +143654,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@6 (2: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
@@ -73128,24 +143695,100 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@1⌋ ;
- ppx -> &mut@1 (⌊mut@2⌋) ;
- ppy -> &mut@3 (&mut@6 (2: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) })
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) })
+ }
+}
+
+
+- op:
+copy *(px)
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
@@ -73156,8 +143799,43 @@ ty: (Types.Adt (Types.Tuple, [],
}
}
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 2))
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) })
+ }
+}
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 0)
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -73165,24 +143843,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> &mut@3 (&mut@6 (2: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
@@ -73200,24 +143878,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> &mut@3 (&mut@6 (2: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
@@ -73228,6 +143906,117 @@ ty: (Types.Adt (Types.Tuple, [],
}
}
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) })
+ }
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (&mut@6 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) })
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: &mut@6 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) })
+ }
+}
+
+
[Debug] end_abstraction: 0
- context after loans ended:
# Ended regions: {}
@@ -73235,24 +144024,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
@ended_mut_loan{ given_back=@ignored_mut_borrow(None, 2: i32); child=@ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)} }
@@ -73263,6 +144052,44 @@ ty: (Types.Adt (Types.Tuple, [],
}
}
+[Debug] give_back_value:
+- bid: 2
+- value: s@3 : &r@1 mut (i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ ⊥ : &r@0 mut (&r@1 mut (i32)),
+ @ended_mut_loan{ given_back=@ignored_mut_borrow(None, 2: i32); child=@ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)} }
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
[Debug] end_abstraction: 0
- original context:
# Ended regions: {}
@@ -73270,24 +144097,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⌊mut@2⌋ ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> &mut@3 (&mut@6 (2: i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@6 (2: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@0{parents={}}{regions={0}} {
&mut@2 (@ignored_mut_borrow(None, 0: i32)),
⌊mut@3, @ended_ignored_mut_loan{ given_back=1: i32; child: proj_loans (s@2 : i32)}⌋
@@ -73305,30 +144132,129 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> s@3 : &r@1 mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (s@3 : &r@1 mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
}
}
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (s@3 : &r@1 mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (s@3 : &r@1 mut (i32))
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: s@3 : &r@1 mut (i32)
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
[Debug] expand_symbolic_value: s@3 : &r@1 mut (i32)
- original context:
@@ -73337,24 +144263,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> s@3 : &r@1 mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> s@3 : &r@1 mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@3 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73368,24 +144294,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73416,24 +144342,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@4 : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@4 : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73453,24 +144379,92 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> s@4 : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@4 : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> s@4 : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+- op:
+move var@11
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73478,6 +144472,8 @@ ty: (Types.Adt (Types.Tuple, [],
}
+- op:
+2: i32
[Debug]
**About to evaluate statement**: [
@@ -73501,24 +144497,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> s@5 : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@5 : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73538,24 +144534,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> s@5 : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@5 : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73564,6 +144560,41 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@5 : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+- op:
+move var@10
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@9);
@@ -73585,24 +144616,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> s@6 : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> s@6 : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73622,24 +144653,57 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> s@6 : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> s@6 : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> true ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73647,6 +144711,8 @@ ty: (Types.Adt (Types.Tuple, [],
}
+- op:
+move var@9
[Debug]
**About to evaluate statement**: [
@@ -73668,24 +144734,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73705,24 +144771,57 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (s@4 : i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (s@4 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73730,6 +144829,8 @@ ty: (Types.Adt (Types.Tuple, [],
}
+- op:
+3: i32
[Debug]
**About to evaluate statement**: [
@@ -73750,24 +144851,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73787,24 +144888,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73813,6 +144914,73 @@ ty: (Types.Adt (Types.Tuple, [],
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 1)
[Debug] end_abstraction: 1
- original context:
# Ended regions: {0}
@@ -73820,24 +144988,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73851,30 +145019,129 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
}
}
+[Debug] end borrow: 7:
+- original context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+[Debug] give_back:
+- bid: 7
+- content: &mut@7 (3: i32)
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 7
+- value: 3: i32
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
[Debug] end_abstraction: 1
- context after loans ended:
# Ended regions: {0}
@@ -73882,30 +145149,98 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=3: i32; child=proj_loans (s@4 : i32) }; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
}
}
+[Debug] give_back_value:
+- bid: 0
+- value: s@7 : i32
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=3: i32; child=proj_loans (s@4 : i32) }; child=⊥ : &r@1 mut (i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 6
+- value: s@8 : i32
+- context:
+# Ended regions: {0}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=3: i32; child=proj_loans (s@4 : i32) }; child=⊥ : &r@1 mut (i32)),
+ @ended_ignored_mut_loan{ given_back=⊥ : &r@1 mut (i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
[Debug] end_abstraction: 1
- original context:
# Ended regions: {0}
@@ -73913,24 +145248,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> ⌊mut@0⌋ ;
- px -> &mut@7 (3: i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (⌊mut@6⌋) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@7 (3: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (⌊mut@6⌋) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
abs@1{parents={}}{regions={1}} {
@ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@7, proj_loans (s@4 : i32)⌋; child=&mut@0 (0: i32)),
@ended_ignored_mut_loan{ given_back=&mut@6 (2: i32); child: @ended_mut_loan{ given_back=1: i32; child=proj_loans (s@2 : i32) }}
@@ -73944,24 +145279,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
[Debug]
@@ -73982,24 +145317,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> s@7 : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@7 : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -74015,28 +145350,90 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> s@7 : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@7 : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> s@7 : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@14
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+1: i32
+
[Debug]
**About to evaluate statement**: [
var@12 := ¬ move var@13;
@@ -74054,24 +145451,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> s@9 : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> s@9 : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -74087,28 +145484,59 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> s@9 : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> s@9 : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> s@9 : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@13
+
[Debug]
**About to evaluate statement**: [
assert(¬move var@12);
@@ -74125,24 +145553,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> s@10 : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> s@10 : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -74158,27 +145586,58 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> s@10 : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> s@10 : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> true ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+- op:
+move var@12
[Debug]
**About to evaluate statement**: [
@@ -74195,24 +145654,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -74228,27 +145687,145 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> ⌊mut@5⌋ ;
- py -> &mut@5 (s@8 : i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+copy y
+
+[Debug] end borrow: 5:
+- original context:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> &mut@5 (s@8 : i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+[Debug] give_back:
+- bid: 5
+- content: &mut@5 (s@8 : i32)
+- context:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+[Debug] give_back_value:
+- bid: 5
+- value: s@8 : i32
+- context:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> ⌊mut@5⌋ ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
[Debug]
**About to evaluate statement**: [
@@ -74264,24 +145841,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> s@8 : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> s@8 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@8 : i32 ;
}
@@ -74297,28 +145874,90 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> s@8 : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> s@8 : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@8 : i32 ;
}
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> s@8 : i32 ;
+}
+
+
+- op:
+move var@17
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+- op:
+3: i32
+
[Debug]
**About to evaluate statement**: [
var@15 := ¬ move var@16;
@@ -74332,24 +145971,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> s@8 : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> s@11 : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> s@11 : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -74365,27 +146004,58 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> s@8 : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> s@11 : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> s@11 : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> s@11 : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+- op:
+move var@16
[Debug]
**About to evaluate statement**: [
@@ -74399,24 +146069,24 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> s@8 : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> s@12 : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> s@12 : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
@@ -74432,27 +146102,58 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> s@8 : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> s@12 : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> s@12 : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> true ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
}
+- op:
+move var@15
[Debug]
**About to evaluate statement**: [
@@ -74465,24 +146166,3791 @@ ty: (Types.Adt (Types.Tuple, [],
# Frame 0:
{
- var@0 -> ⊥ : () ;
- x -> s@7 : i32 ;
- px -> ⊥ : &'_ mut (i32) ;
- ppx -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- ppy -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- var@5 -> ⊥ : &'_ mut (&'_ mut (i32)) ;
- y -> s@8 : i32 ;
- py -> ⊥ : &'_ mut (i32) ;
- var@8 -> ⊥ : &'_ mut (i32) ;
- var@9 -> ⊥ : bool ;
- var@10 -> ⊥ : bool ;
- var@11 -> ⊥ : i32 ;
- var@12 -> ⊥ : bool ;
- var@13 -> ⊥ : bool ;
- var@14 -> ⊥ : i32 ;
- var@15 -> ⊥ : bool ;
- var@16 -> ⊥ : bool ;
- var@17 -> ⊥ : i32 ;
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@7 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (y) -> s@8 : i32 ;
+ Some (py) -> ⊥ : &'_ mut (i32) ;
+ Some (var@8) -> ⊥ : &'_ mut (i32) ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : bool ;
+ Some (var@11) -> ⊥ : i32 ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : bool ;
+ Some (var@14) -> ⊥ : i32 ;
+ Some (var@15) -> ⊥ : bool ;
+ Some (var@16) -> ⊥ : bool ;
+ Some (var@17) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] test_function_symbolic: id_mut_mut_test3
+[Debug]
+**About to evaluate statement**: [
+ x := 0: i32;
+ px := &mut x;
+ ppx := &mut px;
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ x := 0: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⊥ : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+- op:
+0: i32
+
+[Debug]
+**About to evaluate statement**: [
+ px := &mut x;
+ ppx := &mut px;
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ px := &mut x
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> 0: i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppx := &mut px;
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppx := &mut px
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@0 (0: i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@5 := &two-phase *(ppx);
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@5 := &two-phase *(ppx)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (&mut@0 (0: i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppy := move id_mut_mut<i32>(move var@5);
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppy := move id_mut_mut<i32>(move var@5)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (@shared_loan({2}, &mut@0 (0: i32))) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⌊inactivated_mut@2⌋ ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] activate_inactivated_mut_borrow: resulting value:
+&mut@0 (0: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> &mut@2 (&mut@0 (0: i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@5
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppy)) := 1: i32;
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppy)) := 1: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+}
+
+
+- op:
+1: i32
+
+[Debug] expand_symbolic_value: s@0 : &r@0 mut (&r@1 mut (i32))
+
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> s@0 : &r@0 mut (&r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ proj_loans (s@0 : &r@0 mut (&r@1 mut (i32)))
+ }
+ None -> 1: i32 ;
+}
+
+
+- new context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@1 : &r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, proj_loans (s@1 : &r@1 mut (i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, proj_loans (s@1 : &r@1 mut (i32)))
+ }
+ None -> 1: i32 ;
+}
+
+
+[Debug] expand_symbolic_value: s@1 : &r@1 mut (i32)
+
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@1 : &r@1 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, proj_loans (s@1 : &r@1 mut (i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, proj_loans (s@1 : &r@1 mut (i32)))
+ }
+ None -> 1: i32 ;
+}
+
+
+- new context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (s@2 : i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ None -> 1: i32 ;
+}
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@7 := &two-phase *(ppy);
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@7 := &two-phase *(ppy)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (&mut@4 (1: i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppz := move id_mut_mut<i32>(move var@7);
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (@shared_loan({5}, &mut@4 (1: i32))) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⌊inactivated_mut@5⌋ ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ ppz := move id_mut_mut<i32>(move var@7)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (@shared_loan({5}, &mut@4 (1: i32))) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⌊inactivated_mut@5⌋ ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+
+[Debug] activate_inactivated_mut_borrow: resulting value:
+&mut@4 (1: i32)
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> &mut@5 (&mut@4 (1: i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+}
+
+
+- op:
+move var@7
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppz)) := 2: i32;
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> s@3 : &r@2 mut (&r@3 mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ *(*(ppz)) := 2: i32
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> s@3 : &r@2 mut (&r@3 mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> s@3 : &r@2 mut (&r@3 mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+}
+
+
+- op:
+2: i32
+
+[Debug] expand_symbolic_value: s@3 : &r@2 mut (&r@3 mut (i32))
+
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> s@3 : &r@2 mut (&r@3 mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ proj_loans (s@3 : &r@2 mut (&r@3 mut (i32)))
+ }
+ None -> 2: i32 ;
+}
+
+
+- new context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (s@4 : &r@3 mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, proj_loans (s@4 : &r@3 mut (i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, proj_loans (s@4 : &r@3 mut (i32)))
+ }
+ None -> 2: i32 ;
+}
+
+
+[Debug] expand_symbolic_value: s@4 : &r@3 mut (i32)
+
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (s@4 : &r@3 mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, proj_loans (s@4 : &r@3 mut (i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, proj_loans (s@4 : &r@3 mut (i32)))
+ }
+ None -> 2: i32 ;
+}
+
+
+- new context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (s@5 : i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+ None -> 2: i32 ;
+}
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@10 := copy *(px);
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@10 := copy *(px)
+]
+
+**Context**:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+
+- op:
+copy *(px)
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 1: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 2))
+[Debug] end borrow: 2:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 2: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 0)
+[Debug] end_abstraction: 0
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end_abstraction: 0
+- context after parent abstractions ended:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 3: found outer borrows/abs:(InterpreterBorrowsCore.InnerLoans (InterpreterBorrowsCore.Borrow 5))
+[Debug] end borrow: 5:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 5: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 2)
+[Debug] end_abstraction: 2
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end_abstraction: 2
+- context after parent abstractions ended:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] end borrow: 6:
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+[Debug] give_back:
+- bid: 6
+- content: &mut@6 (&mut@7 (2: i32))
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 6
+- value: &mut@7 (2: i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+
+[Debug] end_abstraction: 2
+- context after loans ended:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ @ended_mut_loan{ given_back=@ignored_mut_borrow(None, 2: i32); child=@ignored_mut_loan(7, proj_loans (s@5 : i32)) }
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] give_back_value:
+- bid: 5
+- value: s@6 : &r@3 mut (i32)
+- context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ ⊥ : &r@2 mut (&r@3 mut (i32)),
+ @ended_mut_loan{ given_back=@ignored_mut_borrow(None, 2: i32); child=@ignored_mut_loan(7, proj_loans (s@5 : i32)) }
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] end_abstraction: 2
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+
+- new context:
+# Ended regions: {2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@6 : &r@3 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 3:
+- original context:
+# Ended regions: {2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (s@6 : &r@3 mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] give_back:
+- bid: 3
+- content: &mut@3 (s@6 : &r@3 mut (i32))
+- context:
+# Ended regions: {2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 3
+- value: s@6 : &r@3 mut (i32)
+- context:
+# Ended regions: {2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] end_abstraction: 0
+- context after loans ended:
+# Ended regions: {2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ @ended_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child=@ignored_mut_loan(4, proj_loans (s@2 : i32)) }
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] give_back_value:
+- bid: 2
+- value: s@7 : &r@1 mut (i32)
+- context:
+# Ended regions: {2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ ⊥ : &r@0 mut (&r@1 mut (i32)),
+ @ended_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child=@ignored_mut_loan(4, proj_loans (s@2 : i32)) }
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] end_abstraction: 0
+- original context:
+# Ended regions: {}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (⌊mut@2⌋) ;
+ Some (ppy) -> &mut@3 (⌊mut@5⌋) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> &mut@6 (&mut@7 (2: i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@0{parents={}}{regions={0}} {
+ &mut@2 (@ignored_mut_borrow(None, 0: i32)),
+ ⌊mut@3, @ignored_mut_loan(4, proj_loans (s@2 : i32))⌋
+ }
+ abs@1{parents={0}}{regions={1}} {
+ @ignored_mut_borrow(Some (2), &mut@0 (0: i32)),
+ @ignored_mut_loan(3, ⌊mut@4, proj_loans (s@2 : i32)⌋)
+ }
+ abs@2{parents={}}{regions={2}} {
+ &mut@5 (@ignored_mut_borrow(None, 1: i32)),
+ ⌊mut@6, @ignored_mut_loan(7, proj_loans (s@5 : i32))⌋
+ }
+ abs@3{parents={2}}{regions={3}} {
+ @ignored_mut_borrow(Some (5), &mut@4 (1: i32)),
+ @ignored_mut_loan(6, ⌊mut@7, proj_loans (s@5 : i32)⌋)
+ }
+}
+
+
+- new context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (s@7 : &r@1 mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@7 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 1:
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> &mut@1 (s@7 : &r@1 mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@7 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] give_back:
+- bid: 1
+- content: &mut@1 (s@7 : &r@1 mut (i32))
+- context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@7 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 1
+- value: s@7 : &r@1 mut (i32)
+- context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⌊mut@1⌋ ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@7 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] expand_symbolic_value: s@7 : &r@1 mut (i32)
+
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> s@7 : &r@1 mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@7 : &r@1 mut (i32)); child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- new context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@9 := move var@10 == 2: i32;
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@8 : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@9 := move var@10 == 2: i32
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@8 : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> s@8 : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- op:
+move var@10
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- op:
+2: i32
+
+[Debug]
+**About to evaluate statement**: [
+ var@8 := ¬ move var@9;
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@9 : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@8 := ¬ move var@9
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@9 : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> s@9 : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- op:
+move var@9
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@8);
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> s@10 : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@8)
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> s@10 : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> true ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- op:
+move var@8
+
+[Debug]
+**About to evaluate statement**: [
+ var@13 := copy x;
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@13 := copy x
+]
+
+**Context**:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- op:
+copy x
+
+[Debug] end borrow: 0:
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 0: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 1)
+[Debug] end_abstraction: 1
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end_abstraction: 1
+- context after parent abstractions ended:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 8:
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] give_back:
+- bid: 8
+- content: &mut@8 (s@8 : i32)
+- context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] give_back_value:
+- bid: 8
+- value: s@8 : i32
+- context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] end borrow: 4:
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 4: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 3)
+[Debug] end_abstraction: 3
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end_abstraction: 3
+- context after parent abstractions ended:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 7:
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] end borrow: 7: found outer borrows/abs:(InterpreterBorrowsCore.OuterAbs 3)
+[Debug] end borrow: 7:
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+[Debug] give_back:
+- bid: 7
+- content: &mut@7 (2: i32)
+- context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=⊥ : &r@3 mut (i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+[Debug] end_abstraction: 3
+- context after loans ended:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=⊥ : &r@3 mut (i32); child: @ended_mut_loan{ given_back=2: i32; child=proj_loans (s@5 : i32) }}
+ }
+}
+
+[Debug] give_back_value:
+- bid: 4
+- value: s@11 : i32
+- context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=⊥ : &r@3 mut (i32)),
+ @ended_ignored_mut_loan{ given_back=⊥ : &r@3 mut (i32); child: @ended_mut_loan{ given_back=2: i32; child=proj_loans (s@5 : i32) }}
+ }
+}
+
+
+[Debug] end_abstraction: 3
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- new context:
+# Ended regions: {0, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: @ended_mut_loan{ given_back=proj_borrows (s@11 : i32 <: i32); child=proj_loans (s@2 : i32) }}
+ }
+}
+
+[Debug] end_abstraction: 1
+- context after loans ended:
+# Ended regions: {0, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: @ended_mut_loan{ given_back=proj_borrows (s@11 : i32 <: i32); child=proj_loans (s@2 : i32) }}
+ }
+}
+
+[Debug] give_back_value:
+- bid: 0
+- value: s@12 : i32
+- context:
+# Ended regions: {0, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=@ended_mut_loan{ given_back=proj_borrows (s@8 : i32 <: i32); child=proj_loans (s@8 : i32) }; child=⊥ : &r@1 mut (i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: @ended_mut_loan{ given_back=proj_borrows (s@11 : i32 <: i32); child=proj_loans (s@2 : i32) }}
+ }
+}
+
+
+[Debug] end_abstraction: 1
+- original context:
+# Ended regions: {0, 2}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> ⌊mut@0⌋ ;
+ Some (px) -> &mut@8 (s@8 : i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+ abs@1{parents={}}{regions={1}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=⌊mut@8, proj_loans (s@8 : i32)⌋; child=&mut@0 (0: i32)),
+ @ended_ignored_mut_loan{ given_back=proj_borrows (s@6 : &r@3 mut (i32) <: &r@1 mut (i32)); child: ⌊mut@4, proj_loans (s@2 : i32)⌋}
+ }
+ abs@3{parents={}}{regions={3}} {
+ @ended_ignored_mut_borrow{ given_back_loans_proj=proj_loans (s@6 : &r@3 mut (i32)); child=&mut@4 (1: i32)),
+ @ended_ignored_mut_loan{ given_back=&mut@7 (2: i32); child: ⌊mut@7, proj_loans (s@5 : i32)⌋}
+ }
+}
+
+
+- new context:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+[Debug]
+**About to evaluate statement**: [
+ var@12 := move var@13 == 2: i32;
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> s@12 : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@12 := move var@13 == 2: i32
+]
+
+**Context**:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> s@12 : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> s@12 : i32 ;
+}
+
+
+- op:
+move var@13
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+- op:
+2: i32
+
+[Debug]
+**About to evaluate statement**: [
+ var@11 := ¬ move var@12;
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@13 : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ var@11 := ¬ move var@12
+]
+
+**Context**:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@13 : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> s@13 : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@12
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@11);
+ return
+]
+
+**Context**:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> s@14 : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug]
+**About to evaluate statement**: [
+ assert(¬move var@11)
+]
+
+**Context**:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> s@14 : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+
+[Debug] eval_operand:
+- ctx:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> true ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
+}
+
+
+- op:
+move var@11
+
+[Debug]
+**About to evaluate statement**: [
+ return
+]
+
+**Context**:
+# Ended regions: {0, 1, 2, 3}
+# 1 frame(s)
+
+# Frame 0:
+{
+ Some (var@0) -> ⊥ : () ;
+ Some (x) -> s@12 : i32 ;
+ Some (px) -> ⊥ : &'_ mut (i32) ;
+ Some (ppx) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppy) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@5) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (ppz) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@7) -> ⊥ : &'_ mut (&'_ mut (i32)) ;
+ Some (var@8) -> ⊥ : bool ;
+ Some (var@9) -> ⊥ : bool ;
+ Some (var@10) -> ⊥ : i32 ;
+ Some (var@11) -> ⊥ : bool ;
+ Some (var@12) -> ⊥ : bool ;
+ Some (var@13) -> ⊥ : i32 ;
}