gitweb on Svarog

projekti pod git sistemom za održavanje verzija -- projects under the git version control system
fixed typo (wrong var) in the procedure for printing
[mjc2wsl.git] / src / com / quemaster / transformations / mjc2wsl / mjc2wsl.java
index d50c5a4..9a4493c 100644 (file)
@@ -213,7 +213,7 @@ public class mjc2wsl{
                                ret.append("\nPROC Print_MJ(val, format VAR)==\n");
                                ret.append(createComment("print spacing", C_SPEC));
                                ret.append("\n\tIF format>1 THEN\n\t\tFOR i:=1 TO ");
-                               ret.append("MAX(0, format-SLENGTH(@String(tempb))) STEP 1 DO PRINFLUSH(\" \") OD\n");
+                               ret.append("MAX(0, format-SLENGTH(@String(val))) STEP 1 DO PRINFLUSH(\" \") OD\n");
                                ret.append("\tFI;\n\tPRINFLUSH(val)\nEND\n");
 
                                ret.append("\nPROC Print_MJ_CHAR(val, format VAR)==\n");
@@ -366,7 +366,7 @@ public class mjc2wsl{
                        if (genPrintForEachAddress) {
                                prl("PRINT(\"a" + mjInput.getCounter() + "\");");
                                if (genPauseAfterEachAddress)
-                                       prl("debug_disposable_string := @Read_Line(Standard_Input_Port);");
+                                       prl("@Read_Line_Proc(VAR debug_disposable_string, Standard_Input_Port);");
                        }
                        switch (op) {
                        case load: {
@@ -653,13 +653,18 @@ public class mjc2wsl{
 
                        // read, print
                        case bread: {
-                               // TODO make it a char for read
-                               messages.message("char is read like a number", TransMessages.M_WAR);
-                               prl(createComment("char is read like a number", C_SPEC));
+                               // TODO maybe we'll need a bufer for multi chars!
+                               prl(createStartVar("tempa"));
+                               prl("@Read_Line_Proc(VAR tempa, Standard_Input_Port);");
+                               prl("tempa := @String_To_List(tempa)[1];");
+                               prl(createToEStack("tempa"));
+                               prl(createEndVar());
+                               break;
                        }
                        case read: {
                                prl(createStartVar("tempa"));
-                               prl("tempa := @String_To_Num(@Read_Line(Standard_Input_Port));");
+                               prl("@Read_Line_Proc(VAR tempa, Standard_Input_Port);");
+                               prl("tempa := @String_To_Num(tempa);");
                                prl(createToEStack("tempa"));
                                prl(createEndVar());
                                break;
Svarog.pmf.uns.ac.rs/gitweb maintanance Doni Pracner