changeset 12212:13061bfd0339

8159503: Amend Annotation Actions Reviewed-by: coleenp, hseigel, mschoene, acorn, ctornqvi Contributed-by: rachel.protacio@oracle.com
author rprotacio
date Fri, 01 Jul 2016 15:11:38 -0400
parents 7b0aac4c2aac
children e0337df087e6
files src/share/vm/classfile/classFileParser.cpp
diffstat 1 files changed, 5 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/classfile/classFileParser.cpp	Fri Jul 01 09:33:34 2016 +0200
+++ b/src/share/vm/classfile/classFileParser.cpp	Fri Jul 01 15:11:38 2016 -0400
@@ -5859,6 +5859,11 @@
   assert(cp != NULL, "invariant");
   assert(_loader_data != NULL, "invariant");
 
+  if (_class_name == vmSymbols::java_lang_Object()) {
+    check_property(_local_interfaces == Universe::the_empty_klass_array(),
+                   "java.lang.Object cannot implement an interface in class file %s",
+                   CHECK);
+  }
   // We check super class after class file is parsed and format is checked
   if (_super_class_index > 0 && NULL ==_super_klass) {
     Symbol* const super_class_name = cp->klass_name_at(_super_class_index);