InvokeReturn.java: New file.
authorJeff Sturm <jsturm@one-point.com>
Sun, 24 Feb 2002 06:45:19 +0000 (06:45 +0000)
committerJeff Sturm <jsturm@gcc.gnu.org>
Sun, 24 Feb 2002 06:45:19 +0000 (06:45 +0000)
* libjava.lang/InvokeReturn.java: New file.
* libjava.lang/InvokeReturn.out: New file.

From-SVN: r50001

libjava/testsuite/ChangeLog
libjava/testsuite/libjava.lang/InvokeReturn.java [new file with mode: 0644]
libjava/testsuite/libjava.lang/InvokeReturn.out [new file with mode: 0644]

index 7c41d8027d08b708f066864ea2f232a67e209269..efc944afe69d76b1d097d9f1c3ea8da035079d8e 100644 (file)
@@ -1,3 +1,8 @@
+2002-02-23  Jeff Sturm  <jsturm@one-point.com>
+
+       * libjava.lang/InvokeReturn.java: New file.
+       * libjava.lang/InvokeReturn.out: New file.
+
 2002-02-20  Bryce McKinlay  <bryce@waitaki.otago.ac.nz>
 
        * lib/libjava.exp: Add "xfail-byte-output" and "xfail-source-output".
diff --git a/libjava/testsuite/libjava.lang/InvokeReturn.java b/libjava/testsuite/libjava.lang/InvokeReturn.java
new file mode 100644 (file)
index 0000000..10128b5
--- /dev/null
@@ -0,0 +1,76 @@
+import java.lang.reflect.Method;
+
+// Test return values of Method.invoke.
+public class InvokeReturn {
+  public boolean bTrue() {
+    return true;
+  }
+
+  public boolean bFalse() {
+    return false;
+  }
+
+  public char cc() {
+    return 'c';
+  }
+
+  public short s5() {
+    return (short)5;
+  }
+
+  public int i6() {
+    return 6;
+  }
+
+  public long l7() {
+    return (long)7;
+  }
+
+  public float f8() {
+    return (float)8.0;
+  }
+
+  public double d9() {
+    return 9.0;
+  }
+
+  public static void main(String[] args) {
+    try {
+      Object o = new InvokeReturn();
+      Method m;
+
+      // test boolean result
+      m = o.getClass().getDeclaredMethod("bTrue", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+
+      m = o.getClass().getDeclaredMethod("bFalse", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+
+      // test char result
+      m = o.getClass().getDeclaredMethod("cc", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+
+      // test short result
+      m = o.getClass().getDeclaredMethod("s5", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+
+      // test int result
+      m = o.getClass().getDeclaredMethod("i6", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+
+      // test long result
+      m = o.getClass().getDeclaredMethod("l7", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+
+      // test float result
+      m = o.getClass().getDeclaredMethod("f8", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+
+      // test double result
+      m = o.getClass().getDeclaredMethod("d9", new Class[0]);
+      System.out.println(m.invoke(o, new Object[0]));
+    } catch (Throwable t) {
+      t.printStackTrace();
+    }
+  }
+}
diff --git a/libjava/testsuite/libjava.lang/InvokeReturn.out b/libjava/testsuite/libjava.lang/InvokeReturn.out
new file mode 100644 (file)
index 0000000..01f8643
--- /dev/null
@@ -0,0 +1,8 @@
+true
+false
+c
+5
+6
+7
+8.0
+9.0