3971 create_combined_annotations(CHECK_(nullHandle)); |
3971 create_combined_annotations(CHECK_(nullHandle)); |
3972 |
3972 |
3973 // Make sure this is the end of class file stream |
3973 // Make sure this is the end of class file stream |
3974 guarantee_property(cfs->at_eos(), "Extra bytes at the end of class file %s", CHECK_(nullHandle)); |
3974 guarantee_property(cfs->at_eos(), "Extra bytes at the end of class file %s", CHECK_(nullHandle)); |
3975 |
3975 |
|
3976 if (_class_name == vmSymbols::java_lang_Object()) { |
|
3977 check_property(_local_interfaces == Universe::the_empty_klass_array(), |
|
3978 "java.lang.Object cannot implement an interface in class file %s", |
|
3979 CHECK_(nullHandle)); |
|
3980 } |
3976 // We check super class after class file is parsed and format is checked |
3981 // We check super class after class file is parsed and format is checked |
3977 if (super_class_index > 0 && super_klass.is_null()) { |
3982 if (super_class_index > 0 && super_klass.is_null()) { |
3978 Symbol* sk = cp->klass_name_at(super_class_index); |
3983 Symbol* sk = cp->klass_name_at(super_class_index); |
3979 if (access_flags.is_interface()) { |
3984 if (access_flags.is_interface()) { |
3980 // Before attempting to resolve the superclass, check for class format |
3985 // Before attempting to resolve the superclass, check for class format |