X-Git-Url: http://git.megacz.com/?p=org.ibex.classgen.git;a=blobdiff_plain;f=src%2Forg%2Fibex%2Fclassgen%2FConstantPool.java;h=5868f62946b2649a2edd8ba417f0fcb9545890a1;hp=17ea634fc6b56f3694e4029063681f361d83915f;hb=f0d5b6ee8a3ca364ca8d833484a7454beeca2f24;hpb=5a08820e18996e02dcf0ba12f502ba7f0bc781ea diff --git a/src/org/ibex/classgen/ConstantPool.java b/src/org/ibex/classgen/ConstantPool.java index 17ea634..5868f62 100644 --- a/src/org/ibex/classgen/ConstantPool.java +++ b/src/org/ibex/classgen/ConstantPool.java @@ -86,7 +86,7 @@ class ConstantPool implements CGConst { ClassEnt(String s) { this(); this.utf8 = (Utf8Ent) addUtf8(s); } void dump(DataOutput o) throws IOException { super.dump(o); o.writeShort(utf8.n); } Type.Class getTypeClass() { return (Type.Class) key(); } - Object _key() { return new Type.Class(utf8.s); } + Object _key() { return Type.Class.instance(utf8.s); } void unref() { utf8.unref(); super.unref(); } String debugToString() { return "[Class: " + utf8.s + "]"; } } @@ -123,7 +123,7 @@ class ConstantPool implements CGConst { 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); @@ -236,7 +236,7 @@ class ConstantPool implements CGConst { : 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");