<p>-version 3.11
<ul>
- <li>JIRA JASSIST-74, 75 was fixed.
+ <li>JIRA JASSIST-74, 75, 76 were fixed.
</ul>
<p>-version 3.10 on March 5, 2009
}
else if (isSpecial) // if (isSpecial && notStatic(acc))
bytecode.addInvokespecial(declClass, mname, desc);
- else if (declClass.isInterface())
- bytecode.addInvokeinterface(declClass, mname, desc, count);
- else
- if (isStatic)
- throw new CompileError(mname + " is not static");
+ else {
+ if (!Modifier.isPublic(declClass.getModifiers())
+ || declClass.isInterface() != targetClass.isInterface())
+ declClass = targetClass;
+
+ if (declClass.isInterface())
+ bytecode.addInvokeinterface(declClass, mname, desc, count);
else
- bytecode.addInvokevirtual(declClass, mname, desc);
+ if (isStatic)
+ throw new CompileError(mname + " is not static");
+ else
+ bytecode.addInvokevirtual(declClass, mname, desc);
+ }
setReturnType(desc, isStatic, popTarget);
}