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 > > As I see it, the viable choice is to downdrade KJC to KJC 1.5A. > Another choice would be to keep KJC 2.1A and to fix Hashtable.java (and HashMap.java) instead ... In file Hashtable.java, lines 167 to 170 are : private void writeDefaultObject() { loadFactor = map.loadFactor; threshold = (int)(map.table.length * loadFactor); } where : "map" is a field of "Hashtable" of type "java.util.HashMap", "table" is a field of "HashMap" of type array of "HashMap.Entry", "HashMap.Entry" is a private inner class of "HashMap". From JLS 6.6.1 "Determining Accessibility" : * An array type is accessible if and only if its element type is accessible. Thus, "map.table" is not accessible from class "java.util.Hashtable" and a compile-time error must occur. Javac (from JDK 1.4.0beta3) detects the error, Jikes 1.15 does not. Best regards, Thomas