On Sunday 17 March 2002 18:01, Ito Kazumitsu wrote:
> Now KJC 2.1A has been released. But when I tried to rebuild
> Klasses.jar with KJC 2.1A, I got the following message:
>
> /bin/sh ./rebuildLib
> Compiling classes ...
> java/util/Hashtable.java:169: error:Class "Entry" is not accessible [JLS
> 6.6.1] java/util/Hashtable.java:201: error:Class "Entry" is not accessible
> [JLS 6.6.1] make: *** [lib/stamp] Error 1
the attached patch solves that problem & javac compilation problems for me.
could you give it a try?
cheers,
dalibor topic
* libraries/javalib/java/util/HashMap.java :
(getTableLength) new method.
* libraries/javalib/java/util/Hashtable.java :
(writeDefaultObject) Use getTableLength instead of accesing
table directly.
(writeObject) same.
--- kaffe/libraries/javalib/java/util/Hashtable.java Fri Nov 23 00:38:12 2001
+++ patched-kaffe/libraries/javalib/java/util/Hashtable.java Mon Mar 18 19:33:57 2002
@@ -166,7 +166,7 @@
private void writeDefaultObject() {
loadFactor = map.loadFactor;
- threshold = (int)(map.table.length * loadFactor);
+ threshold = (int)(map.getTableLength() * loadFactor);
}
}
@@ -198,7 +198,7 @@
stream.defaultWriteObject();
// remember how many buckets there were
- stream.writeInt(map.table.length);
+ stream.writeInt(map.getTableLength());
stream.writeInt(map.size());
Iterator i = map.entrySet().iterator();
--- kaffe/libraries/javalib/java/util/HashMap.java Mon Dec 3 13:11:41 2001
+++ patched-kaffe/libraries/javalib/java/util/HashMap.java Mon Mar 18 19:33:18 2002
@@ -101,6 +101,10 @@
return e == null ? null : e.value;
}
+ int getTableLength() {
+ return table.length;
+ }
+
public Object put(Object key, Object val) {
// See if key already exists