This is the mail archive of the
kawa@sourceware.org
mailing list for the Kawa project.
Re: Patch: new special form #!native
On Sep 29, 2011, at 2:32 PM, Per Bothner wrote:
This looks clean, but it causes a regression (tested using jdk7):
testsuite$ make check-knucleotide-2
CLASSPATH="/home/bothner/JWebPane/jfx/artifacts/sdk/rt/lib/
jfxrt.jar:/home/bothner/Java/servlet.jar:.:$CLASSPATH" \
../bin/kawa.sh --warn-undefined-variable --warn-invoke-unknown-
method --warn-as-error --main -T knucleotide2 -C ./knucleotide-2.scm
(compiling ./knucleotide-2.scm to knucleotide2)
./knucleotide-2.scm:13:1: missing implementation for java.util.Map
$Entry.hashCode()int
make: *** [knucleotide2.class] Error 255
Bummer. Confirmed with 1.6.
I assume this is because of the changes to ClassExp#compileMembers -
probably the second change.
Somehow the (native) implement of java.lang.Object#hashCode is
skipped. Probably easy to fix.
That must be it. Reverting the second change (but nothing else) fixes
it,
and my #!native test (which requires jna or jnaerator) still works.
To be honest, I'm really not sure what that section of ClassExp is
doing;
I just did a search for isAbstract() and added isNative() calls in the
vicinity assuming that in most cases that would be a reasonable thing to
do.
Does it otherwise seem like a reasonable addition?
-Jamie
--
Jamison Hope
The PTR Group
www.theptrgroup.com