X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Finternal%2Fcodegen%2Fwriter%2FModuleWriter.java;h=e663c814e2f60b006fd06493ea11782795d98530;hp=a0484176556009b895484aae50c526598d3a625d;hb=91682baa9a8252390f09b80fd724f47e5957b234;hpb=9a175feb652b2b7bba7afa540831b9076be3c10e diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/writer/ModuleWriter.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/writer/ModuleWriter.java index a04841765..e663c814e 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/writer/ModuleWriter.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/internal/codegen/writer/ModuleWriter.java @@ -9,6 +9,8 @@ import org.simantics.scl.compiler.constants.SCLConstant; import org.simantics.scl.compiler.internal.codegen.ssa.SSABlock; import org.simantics.scl.compiler.internal.codegen.ssa.SSAFunction; import org.simantics.scl.compiler.internal.codegen.ssa.SSAModule; +import org.simantics.scl.compiler.internal.codegen.ssa.StaticField; +import org.simantics.scl.compiler.internal.parsing.utils.LineLocator; import org.simantics.scl.compiler.types.TVar; import org.simantics.scl.compiler.types.Type; import org.simantics.scl.runtime.tuple.Tuple2; @@ -18,15 +20,17 @@ import gnu.trove.map.hash.THashMap; public class ModuleWriter { SSAModule module; + LineLocator lineLocator; String moduleClassName; THashMap externalConstantMap = new THashMap(); int externalConstantId = 0; - public ModuleWriter(String moduleClassName) { + public ModuleWriter(String moduleClassName, LineLocator lineLocator) { this.module = new SSAModule(); this.moduleClassName = moduleClassName; + this.lineLocator = lineLocator; } public CodeWriter createFunction(SCLConstant constant, TVar[] typeParameters, @@ -59,7 +63,7 @@ public class ModuleWriter { String name = "externalConstant" + externalConstantId; JavaStaticField constant = new JavaStaticField(moduleClassName, name, type, -1); externalConstantMap.put(tuple, constant); - module.addStaticField(new Tuple2(name, type)); + module.addStaticField(new StaticField(name, type)); return constant; } }