bugKawa - Bugs: bug #11031, eval breaks with module-static #t

 
 

bug #11031: eval breaks with module-static #t

Submitted by:  tk <huh>
Submitted on:  Tue 16 Nov 2004 10:50:27 PM UTC  
 
Category: Code generationSeverity: 3 - Normal
Item Group: Run-time exceptionStatus: None
Privacy: PublicAssigned to: None
Open/Closed: Open

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Thu 24 Mar 2005 04:54:32 AM UTC, comment #1:

This does not fail for me. Perhaps it's been fixed with the recent static module changes? Should a testcase be created?

Jim White <jimwhite>
Tue 16 Nov 2004 10:50:27 PM UTC, original submission:

eval fails with npe when static modules are specified

#|kawa:73|# (set! (static-field <gnu.expr.Compilation> 'moduleStatic) 0)
#|kawa:74|# (eval '((lambda () (let ((x 0)) (+ x 1)))))
1
#|kawa:75|# (set! (static-field <gnu.expr.Compilation> 'moduleStatic) 1)
#|kawa:76|# (eval '((lambda () (let ((x 0)) (+ x 1)))))
java.lang.ExceptionInInitializerError
at sun.misc.Unsafe.ensureClassInitialized(Native Method)
at sun.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:20)
at sun.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:122)
at java.lang.reflect.Field.acquireFieldAccessor(Field.java:779)
at java.lang.reflect.Field.getFieldAccessor(Field.java:760)
at java.lang.reflect.Field.set(Field.java:519)
at gnu.expr.ModuleExp.evalToClass(ModuleExp.java:118)
at gnu.expr.ModuleExp.evalModule(ModuleExp.java:172)
at kawa.lang.Eval.evalBody(Eval.java:91)
at kawa.lang.Eval.eval(Eval.java:25)
at kawa.lang.Eval.apply(Eval.java:127)
at gnu.mapping.CallContext.runUntilDone(CallContext.java:240)
at gnu.expr.ModuleExp.evalModule(ModuleExp.java:194)
at kawa.Shell.run(Shell.java:231)
at kawa.Shell.run(Shell.java:177)
at kawa.Shell.run(Shell.java:164)
at kawa.Shell.run(Shell.java:151)
at kawa.repl.main(repl.java:670)
Caused by: java.lang.NullPointerException
at gnu.kawa.functions.AddOp.apply2(AddOp.java:34)
at gnu.kawa.functions.AddOp.applyN(AddOp.java:73)
at gnu.kawa.functions.AddOp.applyN(AddOp.java:88)
at gnu.mapping.ProcedureN.apply2(ProcedureN.java:39)
at atEvalLevel.$run$(<stdin>:76)
at atEvalLevel.<clinit>(<stdin>)
... 18 more

another case where no error signaled, just produces bad result

#|kawa:87|# (set! (static-field <gnu.expr.Compilation> 'moduleStatic) 0)
#|kawa:88|# (eval '((lambda () 1)))
1
#|kawa:89|# (set! (static-field <gnu.expr.Compilation> 'moduleStatic) 1)
#|kawa:90|# (eval '((lambda () 1)))
#!null

tk <huh>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

Do you think this task is very important?
If so, you can click here to add your encouragement to it.
This task has 0 encouragements so far.

Only logged-in users can vote.

 

Please enter the title of George Orwell's famous dystopian book (it's a date):

 

 

No Changes Have Been Made to This Item

Back to the top


Powered by Savane 3.1-cleanup1