6715757: javap does not print "extends java.lang.Object"

Reviewed-by: ksrini
This commit is contained in:
Jonathan Gibbons 2008-07-08 17:14:22 -07:00
parent fdd75a4bbb
commit 23aea10d3e
4 changed files with 16 additions and 25 deletions

View file

@ -104,14 +104,10 @@ public class ClassWriter extends BasicWriter {
Signature_attribute sigAttr = getSignature(cf.attributes);
if (sigAttr == null) {
// use info from class file header
if (classFile.isClass()) {
if (classFile.super_class != 0 ) {
String sn = getJavaSuperclassName(cf);
if (!sn.equals("java.lang.Object") || options.compat) { // BUG XXXXXXXX
print(" extends ");
print(sn);
}
}
if (classFile.isClass() && classFile.super_class != 0 ) {
String sn = getJavaSuperclassName(cf);
print(" extends ");
print(sn);
}
for (int i = 0; i < classFile.interfaces.length; i++) {
print(i == 0 ? (classFile.isClass() ? " implements " : " extends ") : ",");
@ -124,7 +120,7 @@ public class ClassWriter extends BasicWriter {
// FieldType and a ClassSignatureType that only contains a superclass type.
if (t instanceof Type.ClassSigType)
print(t);
else if (!t.isObject()) {
else {
print(" extends ");
print(t);
}