if(member.name == null) throw new Error("should never happen");
switch(tag) {
case CONSTANT_FIELDREF:
- return klass.getTypeClass().field(member.name.s, Type.instance(member.type.s));
+ return klass.getTypeClass().field(member.name.s, Type.fromDescriptor(member.type.s));
case CONSTANT_METHODREF:
case CONSTANT_INTERFACEMETHODREF:
- Type.Class.Method m = klass.getTypeClass().method(member.name.s + member.type.s);
+ Type.Class.Method m = klass.getTypeClass().method(member.name.s,member.type.s);
return tag == CONSTANT_INTERFACEMETHODREF ? (Object) new InterfaceMethodKey(m) : (Object) m;
default:
throw new Error("should never happen");
: m instanceof Type.Class.Method ? CONSTANT_METHODREF
: 0;
if (tag == 0) throw new Error("should never happen");
- ent = new MemberEnt(tag, m.getDeclaringClass(), m.name, m.getDescriptor());
+ ent = new MemberEnt(tag, m.getDeclaringClass(), m.name, m.getTypeDescriptor());
}
else {
throw new IllegalArgumentException("Unknown type passed to add");