src/share/vm/classfile/classFileParser.cpp

changeset 8572
e828a0e2a4bc
parent 8454
9d07e8518392
parent 8567
65029655928a
child 8604
04d83ba48607
child 8679
fff265b31090
     1.1 --- a/src/share/vm/classfile/classFileParser.cpp	Tue Jul 19 15:39:34 2016 -0700
     1.2 +++ b/src/share/vm/classfile/classFileParser.cpp	Wed Jul 20 15:12:01 2016 -0700
     1.3 @@ -3973,6 +3973,11 @@
     1.4      // Make sure this is the end of class file stream
     1.5      guarantee_property(cfs->at_eos(), "Extra bytes at the end of class file %s", CHECK_(nullHandle));
     1.6  
     1.7 +    if (_class_name == vmSymbols::java_lang_Object()) {
     1.8 +      check_property(_local_interfaces == Universe::the_empty_klass_array(),
     1.9 +                     "java.lang.Object cannot implement an interface in class file %s",
    1.10 +                     CHECK_(nullHandle));
    1.11 +    }
    1.12      // We check super class after class file is parsed and format is checked
    1.13      if (super_class_index > 0 && super_klass.is_null()) {
    1.14        Symbol*  sk  = cp->klass_name_at(super_class_index);

mercurial