diff --git a/source/tlang/compiler/codegen/emit/dgen.d b/source/tlang/compiler/codegen/emit/dgen.d index 1ca1341c..56556953 100644 --- a/source/tlang/compiler/codegen/emit/dgen.d +++ b/source/tlang/compiler/codegen/emit/dgen.d @@ -16,12 +16,21 @@ import compiler.typecheck.dependency.core : Context; import compiler.codegen.mapper : SymbolMapper; import compiler.symbols.data : SymbolType; import compiler.symbols.check : getCharacter; +import misc.utils : Stack; public final class DCodeEmitter : CodeEmitter { + private Stack!(Instruction) varAssStack; + + + + + this(TypeChecker typeChecker, File file) { super(typeChecker, file); + + varAssStack = new Stack!(Instruction)(); } public override string transform(const Instruction instruction) @@ -62,6 +71,10 @@ public final class DCodeEmitter : CodeEmitter import compiler.codegen.mapper : SymbolMapper; string renamedSymbol = SymbolMapper.symbolLookup(context.getContainer(), varDecInstr.varName); + /* TODO: We might need to do a hold and emit */ + + + return varDecInstr.varType~" "~renamedSymbol~";"; } /* LiteralValue */