Fri Nov 13 12:15:14 UTC 2009 pix@kepibu.org * Fix clisp fasl load crash diff -rN -u old-Oh, Ducks!/regexp-template.lisp new-Oh, Ducks!/regexp-template.lisp --- old-Oh, Ducks!/regexp-template.lisp 2015-09-25 18:47:20.000000000 +0000 +++ new-Oh, Ducks!/regexp-template.lisp 2015-09-25 18:47:20.000000000 +0000 @@ -15,3 +15,8 @@ ;; (match (#t(regexp+ "^f(o+)" (?o)) "fooooooobar") (values o &rest)) ;; => "ooooooo", "bar" + +;; prevent clisp from crashing when it loads .fas files with #t(...) forms in them +(defmethod make-load-form ((object unify::template) &optional env) + (declare (ignore env)) + `(make-instance ',(class-of object) :spec ',(template-spec object))) diff -rN -u old-Oh, Ducks!/unification-templates.lisp new-Oh, Ducks!/unification-templates.lisp --- old-Oh, Ducks!/unification-templates.lisp 2015-09-25 18:47:20.000000000 +0000 +++ new-Oh, Ducks!/unification-templates.lisp 2015-09-25 18:47:20.000000000 +0000 @@ -1,5 +1,4 @@ (in-package #:css-selector-unifier) -;; FIXME: this file crashes clisp when loading the fasl...wtf? #.(set-dispatch-macro-character #\# #\T 'unify::|sharp-T-reader|) @@ -99,9 +98,6 @@ (let ((specifier (template-spec template))) (setf (slot-value template 'matcher) (parse-css-specifier (string-trim " " specifier)))))) -;; FIXME: Apparently the #T() objects are causing clisp to crash during -;; fasl-loading. Quite possibly clisp is unable to save objects to fasls. -#+(or) (defun parse-css-specifier (specifier) (match-case (specifier) ;; combinators