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

 
 

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

Submitter:  tk <huh>
Submitted:  Tue 16 Nov 2004 10:50:27 PM UTC
   
 
Category:  Code generation Severity:  3 - Normal
Item Group:  Run-time exception Status:  None
Privacy:  Public Assigned to:  None
Open/Closed:  Open
* Mandatory Fields

Add a New Comment Rich Markup
   

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 Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

CC list is empty

 

There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

Only logged-in users can vote.

 

No changes have been made to this item

Back to the top

Powered by Savane 3.13-0329.
Corresponding source code