summaryrefslogtreecommitdiffstats
path: root/libjava/java
diff options
context:
space:
mode:
authormark <mark@138bc75d-0d04-0410-961f-82ee72b054a4>2002-12-13 10:04:15 +0000
committermark <mark@138bc75d-0d04-0410-961f-82ee72b054a4>2002-12-13 10:04:15 +0000
commit587f6a06e2b582d0f0fc0667a511ab9061f8de8a (patch)
treeda01c6569c832b060066b69519f36c4fc6b40209 /libjava/java
parent0e85ba2b1a347850e92a4971f2775867266082ec (diff)
downloadppe42-gcc-587f6a06e2b582d0f0fc0667a511ab9061f8de8a.tar.gz
ppe42-gcc-587f6a06e2b582d0f0fc0667a511ab9061f8de8a.zip
* java/lang/ClassLoader.java (resolveClass0): Transform
ClassNotFoundException to NoClassDefFoundError. Transform all other throwables to LinkageError. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@60097 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/java')
-rw-r--r--libjava/java/lang/ClassLoader.java18
1 files changed, 12 insertions, 6 deletions
diff --git a/libjava/java/lang/ClassLoader.java b/libjava/java/lang/ClassLoader.java
index 99acac68bb5..033b2cc4a6e 100644
--- a/libjava/java/lang/ClassLoader.java
+++ b/libjava/java/lang/ClassLoader.java
@@ -535,16 +535,22 @@ public abstract class ClassLoader
{
markClassErrorState0 (clazz);
- if (x instanceof Error)
- throw (Error)x;
+ LinkageError e;
+ if (x instanceof LinkageError)
+ e = (LinkageError)x;
+ else if (x instanceof ClassNotFoundException)
+ {
+ e = new NoClassDefFoundError("while resolving class: "
+ + clazz.getName());
+ e.initCause (x);
+ }
else
{
- InternalError e
- = new InternalError ("unexpected exception during linking: "
- + clazz.getName());
+ e = new LinkageError ("unexpected exception during linking: "
+ + clazz.getName());
e.initCause (x);
- throw e;
}
+ throw e;
}
}
}
OpenPOWER on IntegriCloud