Test for PR java.lang/258:
* libjava.lang/Class_1.java: New file. * libjava.lang/Class_1.out: New file. From-SVN: r34532
This commit is contained in:
parent
46327bc509
commit
7254e4eab9
3 changed files with 76 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
2000-06-13 Warren Levy <warrenl@cygnus.com>
|
||||
|
||||
Test for PR java.lang/258:
|
||||
* libjava.lang/Class_1.java: New file.
|
||||
* libjava.lang/Class_1.out: New file.
|
||||
|
||||
2000-05-29 Bryce McKinlay <bryce@albatross.co.nz>
|
||||
|
||||
* libjava.lang/PR242.java: New file. PR gcj/242.
|
||||
|
|
49
libjava/testsuite/libjava.lang/Class_1.java
Normal file
49
libjava/testsuite/libjava.lang/Class_1.java
Normal file
|
@ -0,0 +1,49 @@
|
|||
class C {}
|
||||
class D extends C implements I {}
|
||||
interface I {}
|
||||
interface J extends I {}
|
||||
|
||||
public class Class_1
|
||||
{
|
||||
static void printIsAssignableFrom(Class a, Class b, boolean c)
|
||||
{
|
||||
// The field 'c' can be viewed to see the expected value.
|
||||
System.out.println(a.isAssignableFrom(b));
|
||||
}
|
||||
|
||||
public static void main (String arg[])
|
||||
{
|
||||
System.out.println("Testing class `Class_1'...");
|
||||
printIsAssignableFrom(C.class, Object.class, false);
|
||||
printIsAssignableFrom(C.class, C.class, true);
|
||||
printIsAssignableFrom(C.class, D.class, true);
|
||||
printIsAssignableFrom(D.class, C.class, false);
|
||||
|
||||
printIsAssignableFrom(Object.class, int[].class, true);
|
||||
printIsAssignableFrom(int[].class, int[].class, true);
|
||||
printIsAssignableFrom(C[].class, D.class, false);
|
||||
printIsAssignableFrom(C[].class, D[].class, true);
|
||||
// Known compiler limitation prevents next case from compiling.
|
||||
// printIsAssignableFrom(C[].class, C[][].class, false);
|
||||
System.out.println("printIsAssignableFrom(C[].class, C[][].class, false);" +
|
||||
" case uncompilable due to known compiler limitation.");
|
||||
|
||||
printIsAssignableFrom(Object.class, I.class, true);
|
||||
printIsAssignableFrom(I.class, I.class, true);
|
||||
printIsAssignableFrom(D.class, I.class, false);
|
||||
printIsAssignableFrom(I.class, D.class, true);
|
||||
|
||||
printIsAssignableFrom(D.class, J.class, false);
|
||||
printIsAssignableFrom(J.class, D.class, false);
|
||||
|
||||
printIsAssignableFrom(I.class, J.class, true);
|
||||
printIsAssignableFrom(J.class, J.class, true);
|
||||
printIsAssignableFrom(J.class, I.class, false);
|
||||
|
||||
// Returns true iff both Class objects are equal.
|
||||
printIsAssignableFrom(long.class, long.class, true);
|
||||
|
||||
// Does not work for primitive types in general.
|
||||
printIsAssignableFrom(long.class, int.class, false);
|
||||
}
|
||||
}
|
21
libjava/testsuite/libjava.lang/Class_1.out
Normal file
21
libjava/testsuite/libjava.lang/Class_1.out
Normal file
|
@ -0,0 +1,21 @@
|
|||
Testing class `Class_1'...
|
||||
false
|
||||
true
|
||||
true
|
||||
false
|
||||
true
|
||||
true
|
||||
false
|
||||
true
|
||||
printIsAssignableFrom(C[].class, C[][].class, false); case uncompilable due to known compiler limitation.
|
||||
true
|
||||
true
|
||||
false
|
||||
true
|
||||
false
|
||||
false
|
||||
true
|
||||
true
|
||||
false
|
||||
true
|
||||
false
|
Loading…
Add table
Reference in a new issue