[armedbear] #388: Fixnum.equalp() regression between 1.3.1 and trunk
armedbear
armedbear-devel at common-lisp.net
Wed Apr 8 09:15:49 UTC 2015
#388: Fixnum.equalp() regression between 1.3.1 and trunk
-------------------------+----------------------
Reporter: ehuelsmann | Owner:
Type: defect | Status: new
Priority: major | Milestone:
Component: interpreter | Version:
Keywords: | Parent Tickets:
-------------------------+----------------------
The failed test in stmx looks more serious.
I have reduced it to the following code, which prints
; Evaluation aborted on NIL.
instead of returning the expected hash-table object:
{{{
(let ((h1 (make-hash-table :test 'equalp))
(h2 (make-hash-table :test 'equalp))
(h (make-hash-table :test 'equalp)))
(setf (gethash 1 h1) 2
(gethash 2 h2) 1
(gethash h1 h) h2
(gethash h2 h) h1)
h)
}}}
So, running the code through the interpreter @14753, I see this output:
{{{
D:\abcl\abcl-j>abcl
Armed Bear Common Lisp 1.4.0-dev-svn-14753M
Java 1.7.0_51 Oracle Corporation
Java HotSpot(TM) 64-Bit Server VM
Low-level initialization completed in 0.266 seconds.
Startup completed in 3.938 seconds.
Type ":help" for a list of available commands.
CL-USER(1): (let ((h1 (make-hash-table :test 'equalp))
(h2 (make-hash-table :test 'equalp))
(h (make-hash-table :test 'equalp)))
(setf (gethash 1 h1) 2
(gethash 2 h2) 1
(gethash h1 h) h2
(gethash h2 h) h1)
h)
java.lang.NullPointerException
at org.armedbear.lisp.Fixnum.equalp(Fixnum.java:231)
at org.armedbear.lisp.HashTable.equalp(HashTable.java:150)
at
org.armedbear.lisp.HashTable$EqualpComparator.keysEqual(HashTable.jav
a:439)
at org.armedbear.lisp.HashTable.getEntry(HashTable.java:258)
at org.armedbear.lisp.HashTable.put(HashTable.java:286)
at org.armedbear.lisp.HashTable.puthash(HashTable.java:217)
at
org.armedbear.lisp.HashTableFunctions$pf_puthash.execute(HashTableFun
ctions.java:183)
at org.armedbear.lisp.LispThread.execute(LispThread.java:851)
at org.armedbear.lisp.Lisp.evalCall(Lisp.java:589)
at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
at org.armedbear.lisp.Lisp.eval(Lisp.java:533)
at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
at
org.armedbear.lisp.SpecialOperators$sf_progn.execute(SpecialOperators
.java:273)
at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
at org.armedbear.lisp.Lisp.eval(Lisp.java:533)
at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
at
org.armedbear.lisp.SpecialOperators._let(SpecialOperators.java:169)
at
org.armedbear.lisp.SpecialOperators$sf_let.execute(SpecialOperators.j
ava:101)
at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
at
org.armedbear.lisp.Primitives$pf__eval.execute(Primitives.java:345)
at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
at org.armedbear.lisp.Lisp.evalCall(Lisp.java:575)
at org.armedbear.lisp.Lisp.eval(Lisp.java:540)
at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
at
org.armedbear.lisp.Primitives$sf_block.execute(Primitives.java:3742)
at org.armedbear.lisp.Lisp.eval(Lisp.java:530)
at org.armedbear.lisp.Lisp.progn(Lisp.java:709)
at org.armedbear.lisp.Closure.execute(Closure.java:220)
at org.armedbear.lisp.Closure.execute(Closure.java:148)
at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
at org.armedbear.lisp.Lisp$1.execute(Lisp.java:285)
at org.armedbear.lisp.Symbol.execute(Symbol.java:803)
at org.armedbear.lisp.LispThread.execute(LispThread.java:814)
at org.armedbear.lisp.top_level_47.execute(top-level.lisp:407)
at
org.armedbear.lisp.CompiledClosure.execute(CompiledClosure.java:89)
at org.armedbear.lisp.Symbol.execute(Symbol.java:793)
at org.armedbear.lisp.LispThread.execute(LispThread.java:798)
at org.armedbear.lisp.top_level_48.execute(top-level.lisp:415)
at org.armedbear.lisp.LispThread.execute(LispThread.java:798)
at org.armedbear.lisp.Interpreter.run(Interpreter.java:361)
at org.armedbear.lisp.Main$1.run(Main.java:48)
at java.lang.Thread.run(Thread.java:744)
#<THREAD "interpreter" {3F12FC36}>: Debugger invoked on condition of type
ERROR
Caught java.lang.NullPointerException.
Restarts:
0: TOP-LEVEL Return to top level.
}}}
--
Ticket URL: <http://abcl.org/trac/ticket/388>
armedbear <http://abcl.org>
armedbear
More information about the armedbear-ticket
mailing list