From 99df25bde2985c56f9249e531754f87768373d2c Mon Sep 17 00:00:00 2001 From: Karol Stasiak Date: Wed, 1 Aug 2018 12:43:17 +0200 Subject: [PATCH] Fix macro expansion --- src/main/scala/millfork/compiler/MacroExpander.scala | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/scala/millfork/compiler/MacroExpander.scala b/src/main/scala/millfork/compiler/MacroExpander.scala index 70eb2f17..6e1ff15a 100644 --- a/src/main/scala/millfork/compiler/MacroExpander.scala +++ b/src/main/scala/millfork/compiler/MacroExpander.scala @@ -36,10 +36,12 @@ abstract class MacroExpander[T <: AbstractCode] { case DoWhileStatement(b, i, c, n) => DoWhileStatement(b.map(gx), i.map(gx), f(c), n) case ForStatement(v, start, end, dir, body) => ForStatement(h(v), f(start), f(end), dir, body.map(gx)) case IfStatement(c, t, e) => IfStatement(f(c), t.map(gx), e.map(gx)) + case s: Z80AssemblyStatement => s.copy(expression = f(s.expression), offsetExpression = s.offsetExpression.map(f)) case s: MosAssemblyStatement => s.copy(expression = f(s.expression)) case Assignment(d, s) => Assignment(fx(d), f(s)) case BreakStatement(s) => if (s == paramName) BreakStatement(target.toString) else stmt case ContinueStatement(s) => if (s == paramName) ContinueStatement(target.toString) else stmt + case s: EmptyStatement => s.copy(toTypecheck = s.toTypecheck.map(gx)) case _ => println(stmt) ???