This is the mail archive of the kawa@sources.redhat.com mailing list for the Kawa project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: kawa 1.6.98 problem


Per Bothner writes:
 > Dr. M. Luedde wrote:
 > > ...
 > > The following code yields a "java.lang.Error: attempting to push
dead
 > > variable" on kawa version 1.6.98 (precompiled jar), java version
 > > "1.3.1_02".
 > > ...
 > > (define (halves! X)
 > >   (define (f y z)
 > >     (if (null? z) y
 > > 	(if (null? (cdr z)) (cdr y)
 > > 	    (f (cdr y) (cdr (cdr z))))))
 > >   (if (null? X) (cons () ())
 > >       (if (null? (cdr X)) (cons X ())
 > > 	  (let ((y ())
 > > 		(z ()))
 > > 	    (set! y (f X (cdr (cdr X))))
 > > 	    (set! z (cdr y))
 > > 	    (set-cdr! y ())
 > > 	    (cons X z)))))
 > > 
 > 
 > It works for me.  Tried all of the 1.6.98 compiled
 > from scratch, the CVS version of kawa, and the 1.6.98 jar.
 > I tried both -f foo.scm and -C foo.scm.
 > ...

Thanks Per, 

but the problem persists at my site. Let me provide some more info.

* The code works on MIT Scheme, MzScheme and Petite Chez Scheme.

* My JDK installation seems to be alright as it is able, e.g., to run
  TogetherSoft's "Together", a pretty big Java application.

* The precise error message is:

      "java.lang.Error: attempting to push dead variable
	at gnu.bytecode.CodeAttr.emitLoad(CodeAttr.java:1020)
	at gnu.expr.ApplyExp.compile(ApplyExp.java:333)
	at gnu.expr.ApplyExp.compile(ApplyExp.java:104)
	at gnu.expr.Expression.compile(Expression.java:93)
	at gnu.expr.SetExp.compile(SetExp.java:207)
	at gnu.expr.Expression.compileNotePosition(Expression.java:82)
	at gnu.expr.Expression.compileWithPosition(Expression.java:69)
	at gnu.expr.BeginExp.compile(BeginExp.java:79)
	at gnu.expr.Expression.compileWithPosition(Expression.java:72)
	at gnu.expr.LetExp.compile(LetExp.java:73)
	at gnu.expr.Expression.compileNotePosition(Expression.java:82)
	at gnu.expr.Expression.compileWithPosition(Expression.java:69)
	at gnu.expr.IfExp.compile(IfExp.java:120)
	at gnu.expr.IfExp.compile(IfExp.java:51)
	at gnu.expr.Expression.compileNotePosition(Expression.java:82)
	at gnu.expr.Expression.compileWithPosition(Expression.java:69)
	at gnu.expr.IfExp.compile(IfExp.java:120)
	at gnu.expr.IfExp.compile(IfExp.java:51)
	at gnu.expr.Expression.compileNotePosition(Expression.java:82)
	at gnu.expr.Expression.compileWithPosition(Expression.java:69)
	at gnu.expr.BeginExp.compile(BeginExp.java:80)
	at gnu.expr.Expression.compileWithPosition(Expression.java:72)
	at gnu.expr.LetExp.compile(LetExp.java:73)
	at gnu.expr.Expression.compileWithPosition(Expression.java:72)
	at gnu.expr.LambdaExp.compileBody(LambdaExp.java:1336)
	at gnu.expr.LambdaExp.compileAsMethod(LambdaExp.java:1308)
	at gnu.expr.LambdaExp.compileSetField(LambdaExp.java:520)
	at gnu.expr.SetExp.compile(SetExp.java:145)
	at gnu.expr.Expression.compileNotePosition(Expression.java:82)
	at gnu.expr.Expression.compileWithPosition(Expression.java:69)
	at gnu.expr.BeginExp.compile(BeginExp.java:80)
	at gnu.expr.Expression.compileWithPosition(Expression.java:72)
	at gnu.expr.LetExp.compile(LetExp.java:73)
	at gnu.expr.Expression.compileWithPosition(Expression.java:72)
	at gnu.expr.LambdaExp.compileBody(LambdaExp.java:1336)
	at gnu.expr.Compilation.addClass(Compilation.java:1303)
	at gnu.expr.Compilation.<init>(Compilation.java:742)
	at gnu.expr.ModuleExp.evalToClass(ModuleExp.java:75)
	at gnu.expr.ModuleExp.eval(ModuleExp.java:43)
	at gnu.expr.ModuleExp.evalModule(ModuleExp.java:185)
	at kawa.Shell.run(Shell.java:231)
	at kawa.Shell.run(Shell.java:180)
	at kawa.Shell.run(Shell.java:167)
	at kawa.Shell.run(Shell.java:154)
	at kawa.repl.main(repl.java:561)"

If anyone has an idea what I could do, please let me know.

Thank you, Mirko. 
-- 
Dr. M. Luedde <Mirko.Luedde@Computer.Org>

__________________________________________________________________

Gesendet von Yahoo! Mail - http://mail.yahoo.de
Sie brauchen mehr Speicher für Ihre E-Mails? - http://premiummail.yahoo.de


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]