diff os9/mc09/mc.c @ 106:6566b9f47f4a

asm macro fix
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sat, 29 Dec 2018 18:29:06 +0900
parents 6eef99bb4771
children c5dd5c363d43
line wrap: on
line diff
--- a/os9/mc09/mc.c	Sat Dec 29 12:25:26 2018 +0900
+++ b/os9/mc09/mc.c	Sat Dec 29 18:29:06 2018 +0900
@@ -2823,12 +2823,8 @@
 		}
 		else if (macroeq("asm"))
 		{	if (asmf) error(MCERR);
-			asmf = 1;
-			getline();
-			while (asmf)
-			{	printf("%s",linebuf);
-				getline();
-			}
+			asmf = 2; lineno--; glineno--;
+                        chptr = ";;";
 		}
 		else if (macroeq("endasm"))
 		{	if (!asmf) error(MCERR);
@@ -2838,6 +2834,13 @@
 			getline();
 		else error(MCERR);
 	}
+        if (asmf==2) asmf=1;    /* return ";" to get correct macro alignment */
+        else if (asmf==1) {
+            while (asmf)
+            {	printf("%s",linebuf);
+                    getline();
+            }
+        }
 }
 
 macroeq(s)