|
@@ -48,59 +48,59 @@ Rule Access_Eval_N1 {
|
|
|
}
|
|
|
|
|
|
Rule Access_Init_N2 {
|
|
|
- Root N2_root {}
|
|
|
- Match N2_userroot {
|
|
|
+ Root N2_0 {}
|
|
|
+ Match N2_1 {
|
|
|
match = True
|
|
|
}
|
|
|
- Match N2_frame {
|
|
|
+ Match N2_2 {
|
|
|
match = True
|
|
|
}
|
|
|
- Match N2_phase {
|
|
|
+ Match N2_3 {
|
|
|
match = True
|
|
|
value = "'init'"
|
|
|
}
|
|
|
- Match N2_IP_old {
|
|
|
+ Create N2_4 {}
|
|
|
+ Match N2_5 {
|
|
|
match = True
|
|
|
value = "!access"
|
|
|
}
|
|
|
- Create N2_evalstack_C {}
|
|
|
- Match N2_evalstack_M {}
|
|
|
- Match N2_IP_new {}
|
|
|
- Create N2_phase_new {
|
|
|
+ Match N2_6 {}
|
|
|
+ Match N2_7 {}
|
|
|
+ Create N2_8 {
|
|
|
value = "'eval'"
|
|
|
}
|
|
|
|
|
|
- MatchEdge (N2_root, N2_userroot) {
|
|
|
+ MatchEdge (N2_0, N2_1) {
|
|
|
value = "username"
|
|
|
}
|
|
|
- MatchEdge (N2_userroot, N2_frame) {
|
|
|
+ MatchEdge (N2_1, N2_2) {
|
|
|
value = "'frame'"
|
|
|
}
|
|
|
- MatchEdge (N2_frame, N2_phase) {
|
|
|
+ MatchEdge (N2_2, N2_3) {
|
|
|
value = "'phase'"
|
|
|
}
|
|
|
- DeleteEdge (N2_frame, N2_IP_old) {
|
|
|
+ DeleteEdge (N2_2, N2_5) {
|
|
|
value = "'IP'"
|
|
|
}
|
|
|
- CreateEdge (N2_frame, N2_evalstack_C) {
|
|
|
+ CreateEdge (N2_2, N2_4) {
|
|
|
value = "'evalstack'"
|
|
|
}
|
|
|
- DeleteEdge (N2_frame, N2_evalstack_M) {
|
|
|
+ DeleteEdge (N2_2, N2_6) {
|
|
|
value = "'evalstack'"
|
|
|
}
|
|
|
- CreateEdge (N2_frame, N2_IP_new) {
|
|
|
+ CreateEdge (N2_2, N2_7) {
|
|
|
value = "'IP'"
|
|
|
}
|
|
|
- CreateEdge (N2_evalstack_C, N2_evalstack_M) {
|
|
|
+ CreateEdge (N2_4, N2_6) {
|
|
|
value = "'prev'"
|
|
|
}
|
|
|
- CreateEdge (N2_evalstack_M, N2_phase_new) {
|
|
|
+ CreateEdge (N2_6, N2_8) {
|
|
|
value = "'phase'"
|
|
|
}
|
|
|
- CreateEdge (N2_evalstack_M, N2_IP) {
|
|
|
+ CreateEdge (N2_6, N2_5) {
|
|
|
value = "'inst'"
|
|
|
}
|
|
|
- MatchEdge (N2_IP, N2_IP_new) {
|
|
|
+ MatchEdge (N2_5, N2_7) {
|
|
|
value = "'var'"
|
|
|
}
|
|
|
}
|
|
@@ -523,7 +523,7 @@ Rule Call_Params_First_Multi_N9 {
|
|
|
}
|
|
|
Match N9_2 {
|
|
|
match = True
|
|
|
- ]
|
|
|
+ }
|
|
|
Create N9_3 {}
|
|
|
Create N9_4 {
|
|
|
value = "'init'"
|
|
@@ -1088,10 +1088,10 @@ Rule Continue_N16 {
|
|
|
Match N16_5 {
|
|
|
value = "!while"
|
|
|
}
|
|
|
+ Match N16_6 {}
|
|
|
Match N16_7 {}
|
|
|
- Match N16_8 {}
|
|
|
- Create N16_9 {}
|
|
|
- Match N16_10 {}
|
|
|
+ Create N16_8 {}
|
|
|
+ Match N16_9 {}
|
|
|
|
|
|
MatchEdge (N16_0, N16_1) {
|
|
|
value = "username"
|
|
@@ -1111,19 +1111,19 @@ Rule Continue_N16 {
|
|
|
MatchEdge (N16_4, N16_5) {
|
|
|
value = "'while'"
|
|
|
}
|
|
|
- DeleteEdge (N16_2, N16_7) {
|
|
|
+ DeleteEdge (N16_2, N16_6) {
|
|
|
value = "'evalstack'"
|
|
|
}
|
|
|
- MatchEdge (N16_8, N16_6) {
|
|
|
+ MatchEdge (N16_7, N16_5) {
|
|
|
value = "taskname"
|
|
|
}
|
|
|
- DeleteEdge (N16_10, N16_8) {
|
|
|
+ DeleteEdge (N16_9, N16_7) {
|
|
|
value = "'prev'"
|
|
|
}
|
|
|
- CreateEdge (N16_2, N16_9) {
|
|
|
+ CreateEdge (N16_2, N16_8) {
|
|
|
value = "'evalstack'"
|
|
|
}
|
|
|
- CreateEdge (N16_9, N16_8) {
|
|
|
+ CreateEdge (N16_8, N16_7) {
|
|
|
value = "'prev'"
|
|
|
}
|
|
|
}
|
|
@@ -1641,7 +1641,7 @@ Rule Resolve_NoAttrGlobal_N28 {
|
|
|
}
|
|
|
Match N28_9 {}
|
|
|
Match N28_10 {}
|
|
|
- NAC N18_11 {}
|
|
|
+ NAC N28_11 {}
|
|
|
|
|
|
MatchEdge (N28_0, N28_1) {
|
|
|
value = "username"
|