summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-25 20:57:03 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>2002-09-25 20:57:03 +0000
commit31c8980314b50044a5bfb3aaed06d9541a951ace (patch)
tree43e82772814712c2a3228d0a73999e5b18cc3b7f
parent7151fd9e91afc42e713dbb97c32f95cc7aebc050 (diff)
downloadgcc-31c8980314b50044a5bfb3aaed06d9541a951ace.tar.gz
* java/lang/natClassLoader.cc:
(_Jv_PrepareCompiledClass): Throw NoClassDefFoundError, per spec. * resolve.cc: Include NoClassDefFoundError.h, not ClassNotFoundException.h. (_Jv_ResolvePoolEntry): Throw NoClassDefFoundError, per spec. * defineclass.cc: Don't include ClassNotFoundException.h. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@57516 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--libjava/ChangeLog7
-rw-r--r--libjava/defineclass.cc1
-rw-r--r--libjava/java/lang/natClassLoader.cc2
-rw-r--r--libjava/resolve.cc5
4 files changed, 11 insertions, 4 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 2e5a4120e5e..b97f9d53da0 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,5 +1,12 @@
2002-09-25 Tom Tromey <tromey@redhat.com>
+ * java/lang/natClassLoader.cc:
+ (_Jv_PrepareCompiledClass): Throw NoClassDefFoundError, per spec.
+ * resolve.cc: Include NoClassDefFoundError.h, not
+ ClassNotFoundException.h.
+ (_Jv_ResolvePoolEntry): Throw NoClassDefFoundError, per spec.
+ * defineclass.cc: Don't include ClassNotFoundException.h.
+
* resolve.cc: Include StringBuffer.
(_Jv_ResolvePoolEntry): Use StringBuffer to create error string.
diff --git a/libjava/defineclass.cc b/libjava/defineclass.cc
index 95e671f42a3..6a250dadda6 100644
--- a/libjava/defineclass.cc
+++ b/libjava/defineclass.cc
@@ -35,7 +35,6 @@ details. */
#include <java/lang/ClassFormatError.h>
#include <java/lang/NoClassDefFoundError.h>
#include <java/lang/ClassCircularityError.h>
-#include <java/lang/ClassNotFoundException.h>
#include <java/lang/IncompatibleClassChangeError.h>
#include <java/lang/reflect/Modifier.h>
diff --git a/libjava/java/lang/natClassLoader.cc b/libjava/java/lang/natClassLoader.cc
index 9c83d593ebb..d33614dbf03 100644
--- a/libjava/java/lang/natClassLoader.cc
+++ b/libjava/java/lang/natClassLoader.cc
@@ -260,7 +260,7 @@ _Jv_PrepareCompiledClass (jclass klass)
if (! found)
{
jstring str = _Jv_NewStringUTF (name->data);
- throw new java::lang::ClassNotFoundException (str);
+ throw new java::lang::NoClassDefFoundError (str);
}
pool->data[index].clazz = found;
diff --git a/libjava/resolve.cc b/libjava/resolve.cc
index 90df67b8ab9..af1f7c60c1a 100644
--- a/libjava/resolve.cc
+++ b/libjava/resolve.cc
@@ -29,7 +29,7 @@ details. */
#include <java/lang/ClassFormatError.h>
#include <java/lang/IllegalAccessError.h>
#include <java/lang/AbstractMethodError.h>
-#include <java/lang/ClassNotFoundException.h>
+#include <java/lang/NoClassDefFoundError.h>
#include <java/lang/IncompatibleClassChangeError.h>
#include <java/lang/reflect/Modifier.h>
@@ -98,7 +98,8 @@ _Jv_ResolvePoolEntry (jclass klass, int index)
if (! found)
{
jstring str = _Jv_NewStringUTF (name->data);
- throw new java::lang::ClassNotFoundException (str);
+ // This exception is specified in JLS 2nd Ed, section 5.1.
+ throw new java::lang::NoClassDefFoundError (str);
}
if ((found->accflags & Modifier::PUBLIC) == Modifier::PUBLIC