LabelInfo lf = labelInfos.size() >= en.jumpNo?
new LabelInfo(en.jumpNo, -1, Collections.<String>emptyList(), Collections.<Type>emptyList(), Collections.<Type>emptyList(), Collections.<Type>emptyList(), "INCOMPATIBLE_STACKINFO_OUTPUT_ABORTED", "()V")
:labelInfos.get(en.jumpNo);
StackFrame sf = new StackFrame(method, lf.getLineNo(), definingClass[0].getSourceCode());
for (int i = 0; i < lf.getLocals().length; ++i) {
LocalVariable v = lf.getLocals()[i];
if (v != null) {
Object local = en.locals[i];
Member m = new Member(v.getName(), v.getDeclaredType(), local != null?DataTool.convert(local):Data.NULL );
sf.getLocals().add(m);
}
}
for (int i = 0; i < lf.getStack().length; ++i) {
SerializableType v = lf.getStack()[i];
if (v != null) {
Object local = en.stack[i];
Member m = new Member(""+i, v.getDeclaredType(), local != null?DataTool.convert(local):Data.NULL );
sf.getStack().add(m);
}
}
verboseStack.add(sf);
currentMethod = getMethod(classInfo, lf.getCalledMethodName(), lf.getCalledMethodDescriptor(), definingClass);