aboutsummaryrefslogtreecommitdiff
path: root/libjava/testsuite/libjava.jni/iface.java
diff options
context:
space:
mode:
authorTom Tromey <tromey@redhat.com>2004-12-21 00:49:45 +0000
committerTom Tromey <tromey@gcc.gnu.org>2004-12-21 00:49:45 +0000
commit90d8362105e5fcdbb0e8da463f3315c344e8d2b3 (patch)
treeebad3395e1e19c088c5c220227ad303db595561a /libjava/testsuite/libjava.jni/iface.java
parentf8c940c55c841f14853e2aba9399f86853a4e19a (diff)
downloadgcc-90d8362105e5fcdbb0e8da463f3315c344e8d2b3.zip
gcc-90d8362105e5fcdbb0e8da463f3315c344e8d2b3.tar.gz
gcc-90d8362105e5fcdbb0e8da463f3315c344e8d2b3.tar.bz2
re PR libgcj/15001 ([3.4 only] Using JNI with interpreter and interface methods yields SIGSEGV)
PR java/15001 * testsuite/libjava.jni/iface.c: New file. * testsuite/libjava.jni/iface.out: New file. * testsuite/libjava.jni/iface.java: New file. From-SVN: r92445
Diffstat (limited to 'libjava/testsuite/libjava.jni/iface.java')
-rw-r--r--libjava/testsuite/libjava.jni/iface.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/libjava/testsuite/libjava.jni/iface.java b/libjava/testsuite/libjava.jni/iface.java
new file mode 100644
index 0000000..c878ae3
--- /dev/null
+++ b/libjava/testsuite/libjava.jni/iface.java
@@ -0,0 +1,27 @@
+// JNI calls via an interface method were broken in a couple releases.
+
+interface mycomp
+{
+ int compareTo(Object x);
+}
+
+public class iface implements mycomp
+{
+ static
+ {
+ System.loadLibrary("iface");
+ }
+
+ public int compareTo (Object x)
+ {
+ System.out.println ("hi maude");
+ return 3;
+ }
+
+ public native void doCalls(Object x);
+
+ public static void main (String[] args)
+ {
+ new iface().doCalls(args);
+ }
+}