aboutsummaryrefslogtreecommitdiff
path: root/lab5/src/test/resources/lab5xc/test5008_refparamassign.ans
blob: 3f9aefef7805b4c4770c5a789d481654b97de1c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
## type Decl(MConst,f,Fun(None,List((x,MTyp(MRef,TNumber))),Some(TNumber),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),Decl(MVar,y,N(5.0),Binary(Seq,Print(Var(y)),Decl(MConst,z,Call(Var(f),List(Var(y))),Binary(Seq,Print(Var(y)),Print(Var(z))))))) : Undefined
## step    0:
##  Map()
##  Decl(MConst,f,Fun(None,List((x,MTyp(MRef,TNumber))),Some(TNumber),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),Decl(MVar,y,N(5.0),Binary(Seq,Print(Var(y)),Decl(MConst,z,Call(Var(f),List(Var(y))),Binary(Seq,Print(Var(y)),Print(Var(z)))))))
## step    1:
##  Map()
##  Decl(MVar,y,N(5.0),Binary(Seq,Print(Var(y)),Decl(MConst,z,Call(Fun(None,List((x,MTyp(MRef,TNumber))),Some(TNumber),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),List(Var(y))),Binary(Seq,Print(Var(y)),Print(Var(z))))))
## step    2:
##  Map(A(1) -> N(5.0))
##  Binary(Seq,Print(Unary(Deref,A(1))),Decl(MConst,z,Call(Fun(None,List((x,MTyp(MRef,TNumber))),Some(TNumber),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),List(Unary(Deref,A(1)))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z)))))
## step    3:
##  Map(A(1) -> N(5.0))
##  Binary(Seq,Print(N(5.0)),Decl(MConst,z,Call(Fun(None,List((x,MTyp(MRef,TNumber))),Some(TNumber),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),List(Unary(Deref,A(1)))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z)))))
5.0
## step    4:
##  Map(A(1) -> N(5.0))
##  Binary(Seq,Undefined,Decl(MConst,z,Call(Fun(None,List((x,MTyp(MRef,TNumber))),Some(TNumber),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),List(Unary(Deref,A(1)))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z)))))
## step    5:
##  Map(A(1) -> N(5.0))
##  Decl(MConst,z,Call(Fun(None,List((x,MTyp(MRef,TNumber))),Some(TNumber),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),List(Unary(Deref,A(1)))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step    6:
##  Map(A(1) -> N(5.0))
##  Decl(MConst,z,Decl(MRef,x,Unary(Deref,A(1)),Binary(Seq,Assign(Var(x),Binary(Plus,Var(x),N(1.0))),Var(x))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step    7:
##  Map(A(1) -> N(5.0))
##  Decl(MConst,z,Binary(Seq,Assign(Unary(Deref,A(1)),Binary(Plus,Unary(Deref,A(1)),N(1.0))),Unary(Deref,A(1))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step    8:
##  Map(A(1) -> N(5.0))
##  Decl(MConst,z,Binary(Seq,Assign(Unary(Deref,A(1)),Binary(Plus,N(5.0),N(1.0))),Unary(Deref,A(1))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step    9:
##  Map(A(1) -> N(5.0))
##  Decl(MConst,z,Binary(Seq,Assign(Unary(Deref,A(1)),N(6.0)),Unary(Deref,A(1))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step   10:
##  Map(A(1) -> N(6.0))
##  Decl(MConst,z,Binary(Seq,N(6.0),Unary(Deref,A(1))),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step   11:
##  Map(A(1) -> N(6.0))
##  Decl(MConst,z,Unary(Deref,A(1)),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step   12:
##  Map(A(1) -> N(6.0))
##  Decl(MConst,z,N(6.0),Binary(Seq,Print(Unary(Deref,A(1))),Print(Var(z))))
## step   13:
##  Map(A(1) -> N(6.0))
##  Binary(Seq,Print(Unary(Deref,A(1))),Print(N(6.0)))
## step   14:
##  Map(A(1) -> N(6.0))
##  Binary(Seq,Print(N(6.0)),Print(N(6.0)))
6.0
## step   15:
##  Map(A(1) -> N(6.0))
##  Binary(Seq,Undefined,Print(N(6.0)))
## step   16:
##  Map(A(1) -> N(6.0))
##  Print(N(6.0))
6.0
## result:
##  Map(A(1) -> N(6.0))
##  Undefined
undefined