aboutsummaryrefslogtreecommitdiff
path: root/libjava/java/lang/natClass.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libjava/java/lang/natClass.cc')
-rw-r--r--libjava/java/lang/natClass.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/libjava/java/lang/natClass.cc b/libjava/java/lang/natClass.cc
index 9e86111..fb412f2 100644
--- a/libjava/java/lang/natClass.cc
+++ b/libjava/java/lang/natClass.cc
@@ -751,7 +751,7 @@ java::lang::Class::initializeClass (void)
if (state == JV_STATE_ERROR)
{
_Jv_MonitorExit (this);
- throw new java::lang::NoClassDefFoundError;
+ throw new java::lang::NoClassDefFoundError (getName());
}
// Step 6.
@@ -1043,7 +1043,12 @@ _Jv_CheckArrayStore (jobject arr, jobject obj)
jclass obj_class = JV_CLASS (obj);
if (__builtin_expect
(! _Jv_IsAssignableFrom (elt_class, obj_class), false))
- throw new java::lang::ArrayStoreException;
+ throw new java::lang::ArrayStoreException
+ ((new java::lang::StringBuffer
+ (JvNewStringUTF("Cannot store ")))->append
+ (obj_class->getName())->append
+ (JvNewStringUTF(" in array of type "))->append
+ (elt_class->getName())->toString());
}
}