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 \

Reply via email to