This is the mail archive of the
kawa@sources.redhat.com
mailing list for the Kawa project.
java.lang.VerifyError for keyword with type
- From: Chris Dean <Chris dot Dean at sokitomi dot com>
- To: Kawa List <kawa at sources dot redhat dot com>
- Date: Mon, 07 Apr 2003 18:01:18 -0700
- Subject: java.lang.VerifyError for keyword with type
Looks like we can generate invalid code for procedures that have
keywords. In the case where we specify the type of the keyword
parameter we get this error when loading:
Internal error while compiling ./module2.scm
java.lang.VerifyError: (class: module1, method: procWithKeywords$V signature: (Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;) Expecting to find object/array on stack
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:140)
...
A patch for the kawa testsuite is attached that exercises the bug.
Regards,
Chris Dean
Index: module1.scm
===================================================================
RCS file: /cvs/kawa/kawa/testsuite/module1.scm,v
retrieving revision 1.6
diff -u -r1.6 module1.scm
--- module1.scm 3 Mar 2003 03:00:09 -0000 1.6
+++ module1.scm 8 Apr 2003 00:54:44 -0000
@@ -11,3 +11,7 @@
(syntax-rules ()
((deldup list)
(delete-duplicates list))))
+
+(define (proc-with-keywords x #!key (y :: <int> 1))
+ (list x y))
+