From 169f75f3846b0b292f5a7a6b4fddc1023c663ec6 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Wed, 25 Sep 2002 20:57:03 +0000 Subject: [PATCH] * 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. From-SVN: r57516 --- libjava/ChangeLog | 7 +++++++ libjava/defineclass.cc | 1 - libjava/java/lang/natClassLoader.cc | 2 +- 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 + * 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 #include #include -#include #include #include 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 #include #include -#include +#include #include #include @@ -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