summaryrefslogtreecommitdiffstats
path: root/libjava/java
diff options
context:
space:
mode:
authoraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-10 17:16:30 +0000
committeraph <aph@138bc75d-0d04-0410-961f-82ee72b054a4>2000-02-10 17:16:30 +0000
commita13dc0d118a900441b76214132be5c401328eaa5 (patch)
tree050f8341578bf95abc8c7ab48b6e79fd2b1e77ac /libjava/java
parentd1a00ce0da5cfe000daef5e11f5ff8b0949ea69a (diff)
downloadppe42-gcc-a13dc0d118a900441b76214132be5c401328eaa5.tar.gz
ppe42-gcc-a13dc0d118a900441b76214132be5c401328eaa5.zip
2000-02-10 Andrew Haley <aph@cygnus.com>
* interpret.cc: Don't include fdlibm.h. Replace #if with #ifdef throughout. Declare extern __ieee754_fmod. (continue1): Remove op_getfield, op_getstatic, op_putfield, op_putstatic insns. * resolve.cc (_Jv_PrepareClass): Use imeth as method pointer. Search class hierarchy for superclass vtable. * java/lang/natClassLoader.cc (_Jv_UnregisterClass): Don't fall off the end of a pointer list. * java/lang/natThread.cc (stop): Don't abort, throw an exception instead. (suspend): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@31897 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/lang/natClassLoader.cc7
-rw-r--r--libjava/java/lang/natThread.cc7
2 files changed, 10 insertions, 4 deletions
diff --git a/libjava/java/lang/natClassLoader.cc b/libjava/java/lang/natClassLoader.cc
index ba7b2c66b66..e5ff17e02ab 100644
--- a/libjava/java/lang/natClassLoader.cc
+++ b/libjava/java/lang/natClassLoader.cc
@@ -368,12 +368,15 @@ _Jv_UnregisterClass (jclass the_class)
}
_Jv_LoaderInfo **info = &(initiated_classes[hash]);
- for ( ; *info; info = &((*info)->next))
+ for ( ; ; info = &((*info)->next))
{
- while ((*info)->klass == the_class)
+ while (*info && (*info)->klass == the_class)
{
*info = (*info)->next;
}
+
+ if (*info == NULL)
+ break;
}
_Jv_MonitorExit (&ClassClass);
diff --git a/libjava/java/lang/natThread.cc b/libjava/java/lang/natThread.cc
index 50ab7be19af..6870f02c50d 100644
--- a/libjava/java/lang/natThread.cc
+++ b/libjava/java/lang/natThread.cc
@@ -19,6 +19,7 @@ details. */
#include <java/lang/Thread.h>
#include <java/lang/ThreadGroup.h>
#include <java/lang/IllegalArgumentException.h>
+#include <java/lang/UnsupportedOperationException.h>
#include <java/lang/IllegalThreadStateException.h>
#include <java/lang/InterruptedException.h>
#include <java/lang/NullPointerException.h>
@@ -306,14 +307,16 @@ java::lang::Thread::start (void)
void
java::lang::Thread::stop (java::lang::Throwable *)
{
- JvFail ("java::lang::Thread::stop unimplemented");
+ _Jv_Throw (new UnsupportedOperationException
+ (JvNewStringLatin1 ("java::lang::Thread::stop unimplemented")));
}
void
java::lang::Thread::suspend (void)
{
checkAccess ();
- JvFail ("java::lang::Thread::suspend unimplemented");
+ _Jv_Throw (new UnsupportedOperationException
+ (JvNewStringLatin1 ("java::lang::Thread::suspend unimplemented")));
}
void
OpenPOWER on IntegriCloud