diff options
author | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-09-25 20:57:03 +0000 |
---|---|---|
committer | tromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-09-25 20:57:03 +0000 |
commit | 31c8980314b50044a5bfb3aaed06d9541a951ace (patch) | |
tree | 43e82772814712c2a3228d0a73999e5b18cc3b7f | |
parent | 7151fd9e91afc42e713dbb97c32f95cc7aebc050 (diff) | |
download | gcc-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/ChangeLog | 7 | ||||
-rw-r--r-- | libjava/defineclass.cc | 1 | ||||
-rw-r--r-- | libjava/java/lang/natClassLoader.cc | 2 | ||||
-rw-r--r-- | libjava/resolve.cc | 5 |
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 |