aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorBryce McKinlay <bryce@albatross.co.nz>2000-03-21 04:55:43 +0000
committerBryce McKinlay <bryce@gcc.gnu.org>2000-03-21 04:55:43 +0000
commit2ca2f317e2f7153293f6458d93cb6739d7be7504 (patch)
tree5c48420f9355bf7e8945f275c9760dcbbaa8b36a /libjava
parent1ff5b671b624facd50c681f4683c16f740455d02 (diff)
downloadgcc-2ca2f317e2f7153293f6458d93cb6739d7be7504.zip
gcc-2ca2f317e2f7153293f6458d93cb6739d7be7504.tar.gz
gcc-2ca2f317e2f7153293f6458d93cb6739d7be7504.tar.bz2
Test case for PR libgcj/179:
2000-03-21 Bryce McKinlay <bryce@albatross.co.nz> Test case for PR libgcj/179: * libjava.lang/pr179.java: New file. * libjava.lang/pr179.out: New file. From-SVN: r32662
Diffstat (limited to 'libjava')
-rw-r--r--libjava/testsuite/ChangeLog6
-rw-r--r--libjava/testsuite/libjava.lang/pr179.java61
-rw-r--r--libjava/testsuite/libjava.lang/pr179.out8
3 files changed, 75 insertions, 0 deletions
diff --git a/libjava/testsuite/ChangeLog b/libjava/testsuite/ChangeLog
index d0b3c1a..aa590b0 100644
--- a/libjava/testsuite/ChangeLog
+++ b/libjava/testsuite/ChangeLog
@@ -1,3 +1,9 @@
+2000-03-21 Bryce McKinlay <bryce@albatross.co.nz>
+
+ Test case for PR libgcj/179:
+ * libjava.lang/pr179.java: New file.
+ * libjava.lang/pr179.out: New file.
+
2000-03-18 Tom Tromey <tromey@cygnus.com>
* libjava.lang/pr109.java: Added `println' at end.
diff --git a/libjava/testsuite/libjava.lang/pr179.java b/libjava/testsuite/libjava.lang/pr179.java
new file mode 100644
index 0000000..ec99efc
--- /dev/null
+++ b/libjava/testsuite/libjava.lang/pr179.java
@@ -0,0 +1,61 @@
+// Extended regression test for the PR 179.
+//
+// This tests the ".class" language syntax, initialization behaviour for
+// Class.isInstance() and Class.isAssignableFrom(), and isAssignableFrom()
+// functionality in the event that an interface argument that is not
+// implemented by any loaded class is given.
+//
+// Bryce McKinlay <bryce@albatross.co.nz>
+
+class A
+{
+ static
+ {
+ System.out.println("A initialized");
+ }
+}
+
+interface IA {}
+
+class B implements IA
+{
+ static
+ {
+ System.out.println("B initialized");
+ }
+}
+
+class C
+{
+ static
+ {
+ System.out.println("C initialized");
+ }
+}
+
+interface IB {}
+
+public class pr179
+{
+ public static void main(String[] args)
+ {
+ System.out.println (A.class.isAssignableFrom (Object.class));
+ System.out.println (IB.class.isAssignableFrom (B.class));
+ System.out.println (IA.class.isAssignableFrom (B.class));
+ A a = new A();
+ System.out.println (C.class.isInstance (a));
+ C c = new C();
+ System.out.println (C.class.isInstance (c));
+ }
+}
+
+/* Expected Output:
+A initialized
+false
+B initialized
+false
+true
+C initialized
+false
+true
+*/
diff --git a/libjava/testsuite/libjava.lang/pr179.out b/libjava/testsuite/libjava.lang/pr179.out
new file mode 100644
index 0000000..3a63ad6
--- /dev/null
+++ b/libjava/testsuite/libjava.lang/pr179.out
@@ -0,0 +1,8 @@
+A initialized
+false
+B initialized
+false
+true
+C initialized
+false
+true