aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2003-08-18 14:35:34 +0000
committerTom Tromey <tromey@gcc.gnu.org>2003-08-18 14:35:34 +0000
commitcd0698363989ea9ad0c5546a79820da9e404b170 (patch)
treec73cc284818f97538f4bf6a2664bc5fc78178314 /libjava
parent303b74068a5667b688d192bc96829989f5bafc9f (diff)
downloadgcc-cd0698363989ea9ad0c5546a79820da9e404b170.zip
gcc-cd0698363989ea9ad0c5546a79820da9e404b170.tar.gz
gcc-cd0698363989ea9ad0c5546a79820da9e404b170.tar.bz2
re PR libgcj/11951 (natMethod.cc (_Jv_CallAnyMethodA) should clear ffi_result before ffi_call)
PR libgcj/11951: * libjava.jni/pr11951.c: New file. * libjava.jni/pr11951.out: New file. * libjava.jni/pr11951.java: New file. From-SVN: r70543
Diffstat (limited to 'libjava')
-rw-r--r--libjava/testsuite/ChangeLog7
-rw-r--r--libjava/testsuite/libjava.jni/pr11951.c16
-rw-r--r--libjava/testsuite/libjava.jni/pr11951.java14
-rw-r--r--libjava/testsuite/libjava.jni/pr11951.out1
4 files changed, 38 insertions, 0 deletions
diff --git a/libjava/testsuite/ChangeLog b/libjava/testsuite/ChangeLog
index 835092d..4453f93 100644
--- a/libjava/testsuite/ChangeLog
+++ b/libjava/testsuite/ChangeLog
@@ -1,3 +1,10 @@
+2003-08-18 Tom Tromey <tromey@redhat.com>
+
+ PR libgcj/11951:
+ * libjava.jni/pr11951.c: New file.
+ * libjava.jni/pr11951.out: New file.
+ * libjava.jni/pr11951.java: New file.
+
2003-08-12 Tom Tromey <tromey@redhat.com>
* libjava.jacks/jacks.xfail: Updated to account for new passes.
diff --git a/libjava/testsuite/libjava.jni/pr11951.c b/libjava/testsuite/libjava.jni/pr11951.c
new file mode 100644
index 0000000..4c8ab63
--- /dev/null
+++ b/libjava/testsuite/libjava.jni/pr11951.c
@@ -0,0 +1,16 @@
+#include <stdio.h>
+#include <pr11951.h>
+
+JNIEXPORT void JNICALL
+Java_pr11951_nmethod (JNIEnv *env, jclass myclass)
+{
+ jmethodID method;
+ jobject r;
+
+ method = (*env)->GetStaticMethodID (env, myclass, "dosomething",
+ "()Ljava/lang/Object;");
+ r = (*env)->CallStaticObjectMethod (env, myclass, method);
+ printf ("%d\n", r == NULL);
+
+ (*env)->ExceptionClear (env);
+}
diff --git a/libjava/testsuite/libjava.jni/pr11951.java b/libjava/testsuite/libjava.jni/pr11951.java
new file mode 100644
index 0000000..68a9f01
--- /dev/null
+++ b/libjava/testsuite/libjava.jni/pr11951.java
@@ -0,0 +1,14 @@
+public class pr11951
+{
+ public static Object dosomething()
+ {
+ throw new Error();
+ }
+
+ public static native void nmethod();
+
+ public static void main(String[] args)
+ {
+ nmethod();
+ }
+}
diff --git a/libjava/testsuite/libjava.jni/pr11951.out b/libjava/testsuite/libjava.jni/pr11951.out
new file mode 100644
index 0000000..d00491f
--- /dev/null
+++ b/libjava/testsuite/libjava.jni/pr11951.out
@@ -0,0 +1 @@
+1