VerifyError in PushbackReader
Thomas Graf
graf at dms.at
Mon Mar 18 12:28:40 PST 2002
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
More information about the kaffe
mailing list