See http://paste.lisp.org/display/5474. This simple form fails to load correctly in SBCL x86-64. There is no problem with the 32 bit compiler.
(defun test (line) (cl-ppcre:scan-to-strings "Location:.*( \d+\.\d+) *(\w).*( \d+\.\d+) *(\w)" line))
Compile, load the file:
debugger invoked on a TYPE-ERROR in thread 24956: The value NIL is not of type HASH-TABLE.
Consensus is that it's a bug in cl-ppcre
(11:03:28) Xof: LiamH: bug in cl-ppcre; please report it to edi weitz (11:09:08) Xof: "Works fine in sbcl/ia32 and ACL/ia32.", hmm, maybe it's not a bug in cl-ppcre (11:09:57) chavatar: Xof: if you read the backtrace, the object-not-hashtable problem is coming from PCL guts (11:10:30) chavatar: .. or maybe not (11:10:46) chavatar: it could be either PCL or CL-PPCRE (11:13:53) Xof: no, the object-not-hashtable is coming from the :after char-class method which does hash-table-count on (getf :hash args) (11:14:21) chavatar: ok (11:17:26) Xof: if it helps, it's failing on the sixth initialization of a char-class object (11:18:11) Xof: and, um, indeed I'm sure now (11:18:38) Xof: because the second call to make-instance 'char-class in CONVERT-AUX can explicitly pass :hash nil (11:18:42) Xof: so, bug in cl-ppcre
Thanks,
Liam
cl-ppcre-devel@common-lisp.net