Layout interfaces during preparation, not initialization.
authorBryce McKinlay <mckinlay@redhat.com>
Fri, 21 May 2004 16:08:50 +0000 (16:08 +0000)
committerBryce McKinlay <bryce@gcc.gnu.org>
Fri, 21 May 2004 16:08:50 +0000 (17:08 +0100)
* java/lang/natClass.cc (initializeClass): Move
_Jv_LayoutInterfaceMethods call...
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): to here.

From-SVN: r82101

libjava/ChangeLog
libjava/java/lang/natClass.cc
libjava/java/lang/natClassLoader.cc

index 8299f0dce19ba81377c8ededd3b37467288000da..a613fb79e4d287481b8e99632705b98a3b4f032b 100644 (file)
@@ -1,3 +1,10 @@
+2004-05-21  Bryce McKinlay  <mckinlay@redhat.com>
+
+       Layout interfaces during preparation, not initialization. 
+       * java/lang/natClass.cc (initializeClass): Move 
+       _Jv_LayoutInterfaceMethods call...
+       * java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): to here.
+
 2004-05-19  Anthony Green  <green@localhost.localdomain>
 
        * Makefile.am (awt_java_source_files): Remove javax.rmi and
@@ -27,7 +34,6 @@
 
        * java/io/Writer.java (Writer(Object)): Check for null lock object.
 
-
 2004-05-15  Mark Wielaard  <mark@klomp.org>
 
        * doc/cni.sgml: Removed, merged into gcj.texi.
index 3ceda11238f58b0e1d98b27761d0758cdde4e140..ead9bce6b36a7f2702e3d2ce3e1b76e29384b00d 100644 (file)
@@ -790,9 +790,6 @@ java::lang::Class::initializeClass (void)
        }
     }
 
-  if (isInterface ())
-    _Jv_LayoutInterfaceMethods (this);
-
   _Jv_PrepareConstantTimeTables (this);
 
   if (vtable == NULL)
index 9921d1d10e37603beaef3e66125fcc44f520c0e8..ec48352c792cfc6bfea7b2bd3b340db4ee384f06 100644 (file)
@@ -170,6 +170,9 @@ _Jv_PrepareCompiledClass (jclass klass)
     }
 #endif /* INTERPRETER */
 
+  if (klass->isInterface ())
+    _Jv_LayoutInterfaceMethods (klass);
+
   klass->notifyAll ();
 
   _Jv_PushClass (klass);