gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
mjc2wsl - field acces simplification and wraping in VAR statements
authorDoni Pracner <quinnuendo@gmail.com>
Thu, 12 Jun 2014 20:43:19 +0000 (22:43 +0200)
committerDoni Pracner <quinnuendo@gmail.com>
Thu, 12 Jun 2014 20:43:19 +0000 (22:43 +0200)
src/mjc2wsl.java

index d5827844496350ebc4d0bf248b819bccc2236f2f..f754e4ef1d6c3cf719ca58c08bdb80fa06466ccf 100644 (file)
@@ -436,17 +436,18 @@ public class mjc2wsl{
 
                        case getfield: {
                                int f = get2();
+                               prl(createStartVar("tempa"));
                                prl(createTopEStack());
                                prl(createToEStack(createObject("tempa") + "[" + (f + 1) + "]"));
+                               prl(createEndVar());
                                break;
                        }
                        case putfield: {
                                int f = get2();
-                               // we need to use a temparray as a pointer, WSL
-                               // otherwise tries to access it as a list of lists and fails
-                               prl(createTopTwoEStack());
-                               prl("VAR < tempArray := " + createObject("tempb") + " > :");
-                               prl("tempArray[" + (f + 1) + "]:=tempa ENDVAR;");
+                               prl(createStartVar("tempa", "tempb"));
+                               prl(createTopTwoEStack());                              
+                               prl(createObject("tempb") + "[" + (f + 1) + "]:=tempa;");
+                               prl(createEndVar());
                                break;
                        }
 
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner