comparison src/share/vm/oops/klassVtable.cpp @ 1490:f03d0a26bf83

6888954: argument formatting for assert() and friends Reviewed-by: kvn, twisti, apetrusenko, never, dcubed
author jcoomes
date Thu, 22 Apr 2010 13:23:15 -0700
parents cff162798819
children c18cbe5936b8
comparison
equal deleted inserted replaced
1489:cff162798819 1490:f03d0a26bf83
1178 _verify_count = Universe::verify_count(); 1178 _verify_count = Universe::verify_count();
1179 #endif 1179 #endif
1180 oop* end_of_obj = (oop*)_klass() + _klass()->size(); 1180 oop* end_of_obj = (oop*)_klass() + _klass()->size();
1181 oop* end_of_vtable = (oop *)&table()[_length]; 1181 oop* end_of_vtable = (oop *)&table()[_length];
1182 if (end_of_vtable > end_of_obj) { 1182 if (end_of_vtable > end_of_obj) {
1183 fatal1("klass %s: klass object too short (vtable extends beyond end)", 1183 fatal(err_msg("klass %s: klass object too short (vtable extends beyond "
1184 _klass->internal_name()); 1184 "end)", _klass->internal_name()));
1185 } 1185 }
1186 1186
1187 for (int i = 0; i < _length; i++) table()[i].verify(this, st); 1187 for (int i = 0; i < _length; i++) table()[i].verify(this, st);
1188 // verify consistency with superKlass vtable 1188 // verify consistency with superKlass vtable
1189 klassOop super = _klass->super(); 1189 klassOop super = _klass->super();
1222 // we sub_type, because it could be a miranda method 1222 // we sub_type, because it could be a miranda method
1223 if (!vt->klass()->is_subtype_of(method()->method_holder())) { 1223 if (!vt->klass()->is_subtype_of(method()->method_holder())) {
1224 #ifndef PRODUCT 1224 #ifndef PRODUCT
1225 print(); 1225 print();
1226 #endif 1226 #endif
1227 fatal1("vtableEntry %#lx: method is from subclass", this); 1227 fatal(err_msg("vtableEntry " PTR_FORMAT ": method is from subclass", this));
1228 } 1228 }
1229 } 1229 }
1230 1230
1231 #ifndef PRODUCT 1231 #ifndef PRODUCT
1232 1232