提交 a48ce296 编写于 作者: S Skylot

fix: resolve code generation error for interface methods (#775)

上级 cf3e17c4
......@@ -139,7 +139,11 @@ public class NameGen {
}
private String getFallbackName(CodeVar var) {
return getFallbackName(var.getSsaVars().get(0).getAssign());
List<SSAVar> ssaVars = var.getSsaVars();
if (ssaVars.isEmpty()) {
return "v";
}
return getFallbackName(ssaVars.get(0).getAssign());
}
private String getFallbackName(RegisterArg arg) {
......
......@@ -19,7 +19,9 @@ public class CodeVar {
var.setName(mthArg.getName());
var.setDeclared(true);
var.setThis(mthArg.isThis());
var.setSsaVars(Collections.singletonList(new SSAVar(mthArg.getRegNum(), 0, mthArg)));
SSAVar ssaVar = new SSAVar(mthArg.getRegNum(), 0, mthArg);
ssaVar.setCodeVar(var);
var.setSsaVars(Collections.singletonList(ssaVar));
return var;
}
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册