aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/lang
diff options
context:
space:
mode:
authorPer Bothner <per@bothner.com>1999-08-14 12:49:06 -0700
committerTom Tromey <tromey@gcc.gnu.org>1999-08-14 19:49:06 +0000
commitefc3b511cbb097b9e8ce05a9ff44e1d8b7435528 (patch)
treeab7dd5060efb791ab5ae7d301b79c9216964368c /libjava/java/lang
parent2c169babb627a91c6dd3900707cdc53f170a9b70 (diff)
downloadgcc-efc3b511cbb097b9e8ce05a9ff44e1d8b7435528.zip
gcc-efc3b511cbb097b9e8ce05a9ff44e1d8b7435528.tar.gz
gcc-efc3b511cbb097b9e8ce05a9ff44e1d8b7435528.tar.bz2
resolve.cc (_Jv_PrepareClass): Use ClassLoader::resolveClass0.
1999-08-14 Per Bothner <per@bothner.com> * resolve.cc (_Jv_PrepareClass): Use ClassLoader::resolveClass0. * java/lang/natClass.cc (initializeClass): Likewise. * java/lang/ClassLoader.java (resolveClass0): New static method. (resolveClass): Call resolveClass0. (findSystemClass): No longer static. From-SVN: r28711
Diffstat (limited to 'libjava/java/lang')
-rw-r--r--libjava/java/lang/ClassLoader.java19
-rw-r--r--libjava/java/lang/natClass.cc2
2 files changed, 9 insertions, 12 deletions
diff --git a/libjava/java/lang/ClassLoader.java b/libjava/java/lang/ClassLoader.java
index f0b533f..3135740 100644
--- a/libjava/java/lang/ClassLoader.java
+++ b/libjava/java/lang/ClassLoader.java
@@ -23,10 +23,6 @@ import java.util.Stack;
* @author Kresten Krab Thorup
*/
-/* Written using "Java Class Libraries", 2nd edition, ISBN 0-201-31002-3
- * Status: Just a stub; not useful at all.
- */
-
public abstract class ClassLoader {
static private ClassLoader system;
@@ -225,16 +221,17 @@ public abstract class ClassLoader {
* For historical reasons, this method has a name which is easily
* misunderstood. Java classes are never ``resolved''. Classes are
* linked; whereas method and field references are resolved.
- * <P>
- * FIXME: The JDK documentation declares this method
- * <code>final</code>, we declare it <code>static</code> -- any
- * objections? This allows us to call it directly from native code
- * with less hassle.
*
* @param clazz the class to link.
* @exception java.lang.LinkageError
*/
- protected static void resolveClass(Class clazz)
+ protected final void resolveClass(Class clazz)
+ throws java.lang.LinkageError
+ {
+ resolveClass0(clazz);
+ }
+
+ static void resolveClass0(Class clazz)
throws java.lang.LinkageError
{
synchronized (clazz)
@@ -273,7 +270,7 @@ public abstract class ClassLoader {
* @exception java.lang.LinkageError
* @exception java.lang.ClassNotFoundException
*/
- protected native static Class findSystemClass(String name)
+ protected native Class findSystemClass(String name)
throws java.lang.ClassNotFoundException, java.lang.LinkageError;
/*
diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc
index 367f14a..01058dc 100644
--- a/libjava/java/lang/natClass.cc
+++ b/libjava/java/lang/natClass.cc
@@ -398,7 +398,7 @@ java::lang::Class::initializeClass (void)
#ifdef INTERPRETER
if (_Jv_IsInterpretedClass (this))
{
- java::lang::ClassLoader::resolveClass (this);
+ java::lang::ClassLoader::resolveClass0 (this);
// Step 1.
_Jv_MonitorEnter (this);