Fred Gilham wrote on Fri, Jul 12, 2002 at 01:22:20PM -0700: 
> 
> > Can you post the source for make-sort-table?
> 
> 
> (defvar *global-sort-table* nil
>   "The global sort-table")
> 
> (defun make-sort-table (&optional (contents ()))
>   "Build a sort-table.  Contents is a list of oper,opsig pairs to be inserted
>    in the table."
>   (let ((result (make-hash-table :test #'eq)))
>     (mapc #'(lambda (entry)
>             (let ((key (car entry))
>                   (value (cdr entry)))
>               (declare (type ttype value))
>               (assert (is-sort-ttype key) ()
>                       "Key value must be a sort: ~S" key)
>               (sort-table-insert key value result))) ; here
>         contents)
>     result))

I don't really see why, but I am sure the operation part of the
contents (let-variable "key") ends up trying to put the literal
function into the hastable like I indicated in my previous message.

Try this:
                (sort-table-insert (function key) value result))) ; here

Martin

Reply via email to