Here is a patch for javalib/java/lang/reflect/*.java that allows a Java
1.2 project of mine to compile and run with Kaffe.
I hope it is useful and makes it into CVS.
Andrew
diff -duN kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/AccessibleObject.java
kaffe-1.0.6/libraries/javalib/java/lang/reflect/AccessibleObject.java
--- kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/AccessibleObject.java Wed
Dec 31 17:00:00 1969
+++ kaffe-1.0.6/libraries/javalib/java/lang/reflect/AccessibleObject.java Thu
+Mar 8 15:17:33 2001
@@ -0,0 +1,34 @@
+/*
+ * Java core library component.
+ *
+ * Copyright (c) 2001
+ * Andrew Taylor. All rights reserved.
+ *
+ */
+
+package java.lang.reflect;
+
+import java.lang.SecurityException;
+
+public class AccessibleObject {
+
+ private boolean override;
+
+ protected AccessibleObject() {
+ override = true;
+ }
+
+ public boolean isAccessible() {
+ return override;
+ }
+
+ public void setAccessible(boolean accessible) throws SecurityException {
+ override = accessible;
+ }
+
+ public static void setAccessible(AccessibleObject[] objs, boolean accessible)
+throws SecurityException {
+ for (int i = 0; i < objs.length; i++)
+ objs[i].setAccessible(accessible);
+ }
+}
+
Common subdirectories: kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/CVS and
kaffe-1.0.6/libraries/javalib/java/lang/reflect/CVS
diff -duN kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/Constructor.java
kaffe-1.0.6/libraries/javalib/java/lang/reflect/Constructor.java
--- kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/Constructor.java Mon
Jul 5 14:50:49 1999
+++ kaffe-1.0.6/libraries/javalib/java/lang/reflect/Constructor.java Thu Mar 8
+15:35:46 2001
@@ -14,6 +14,7 @@
import java.lang.String;
public final class Constructor
+ extends AccessibleObject
implements Member
{
private Class clazz;
diff -duN kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/Field.java
kaffe-1.0.6/libraries/javalib/java/lang/reflect/Field.java
--- kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/Field.java Mon Jul 5
14:50:49 1999
+++ kaffe-1.0.6/libraries/javalib/java/lang/reflect/Field.java Thu Mar 8 15:35:36
+2001
@@ -14,6 +14,7 @@
import java.lang.Class;
public final class Field
+ extends AccessibleObject
implements Member
{
private Class clazz;
diff -duN kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/Method.java
kaffe-1.0.6/libraries/javalib/java/lang/reflect/Method.java
--- kaffe-1.0.6.orig/libraries/javalib/java/lang/reflect/Method.java Mon Oct 11
20:29:49 1999
+++ kaffe-1.0.6/libraries/javalib/java/lang/reflect/Method.java Thu Mar 8 15:34:45
+2001
@@ -14,6 +14,7 @@
import java.lang.String;
public final class Method
+ extends AccessibleObject
implements Member {
private Class clazz;
--- kaffe-1.0.6.orig/libraries/javalib/Makefile.am Mon Jun 19 05:45:17 2000
+++ kaffe-1.0.6/libraries/javalib/Makefile.am Thu Mar 8 15:50:58 2001
@@ -401,6 +401,7 @@
java/lang/ref/SoftReference.java \
java/lang/ref/WeakReference.java
java_lang_reflect_SRCS = \
+ java/lang/reflect/AccessibleObject.java \
java/lang/reflect/Array.java \
java/lang/reflect/Constructor.java \
java/lang/reflect/Field.java \