<div>Hello,</div><div><br></div><div>I am using CCL (Version 1.4-r13166M  (WindowsX8632)) and cannot compile the following file:</div><div><br></div><div>;; (asdf:oos &#39;asdf:load-op :bordeaux-threads)</div><div><br></div>
<div><div>(defun test-function ()</div><div>  (macrolet ((test-macro ()</div><div>               (let ((lock (gensym &quot;lock&quot;)))</div><div>                 `(let ((,lock ,(bordeaux-threads:make-lock)))</div><div>                    (print ,lock)))))</div>
<div>    (test-macro)))</div></div><div><br></div><div>I can load the file using (load &quot;test.lisp&quot;), but when I try to eval (compile-file &quot;test.lisp&quot;) I get the backtrace reproduced bellow. I guess that the error is related to the macro-expansion of &#39;test-macro being saved to the fasl file, but I don&#39;t know how to fix it.</div>
<div><br></div><div><div>Can&#39;t dump #&lt;RECURSIVE-LOCK [ptr @ #x1199AC0] #x9135196&gt; - unknown type</div><div>   [Condition of type SIMPLE-ERROR]</div><div><br></div><div>Restarts:</div><div> 0: [RETRY-COMPILE-FILE] Retry compiling #P&quot;d:/tmp/test.lisp&quot;</div>
<div> 1: [SKIP-COMPILE-FILE] Skip compiling and loading #P&quot;d:/tmp/test.lisp&quot;</div><div> 2: [ABORT] Return to SLIME&#39;s top level.</div><div> 3: [ABORT-BREAK] Reset this thread</div><div> 4: [ABORT] Kill this thread</div>
<div><br></div><div>Backtrace:</div><div>  0: (CCL::FASL-UNKNOWN #&lt;RECURSIVE-LOCK [ptr @ #x1199AC0] #x9135196&gt;)</div><div>  1: (CCL::FASL-SCAN-CLFUN #&lt;Compiled-function TEST-FUNCTION (Non-Global)  #x91345AE&gt;)</div>
<div>  2: (CCL::FASL-SCAN ((23 21) (47 #1=&quot;d:/tmp/test.lisp&quot;) ..))))</div><div>  3: (CCL::FASL-SCAN-FORMS-AND-DUMP-FILE ((23 21) (47 #1=&quot;d:/tmp/test.lisp&quot;) ..))) &quot;d:/tmp/test.wx32fsl&quot; #&lt;CCL::LEXICAL-ENVIRONMENT #x913E1F6&gt;)</div>
<div>  4: (CCL::%COMPILE-FILE &quot;d:/tmp/test.lisp&quot; &quot;d:/tmp/test.wx32fsl&quot; T NIL NIL T T NIL T :DEFER NIL #&lt;BACKEND WIN32 #x85782E6&gt; :DEFAULT NIL 0)</div><div>  5: (COMPILE-FILE #P&quot;d:/tmp/test.lisp&quot; :OUTPUT-FILE #P&quot;d:/tmp/test.wx32fsl&quot; :VERBOSE T :PRINT NIL :LOAD T :FEATURES NIL :TARGET :WIN32 :SAVE-LOCAL-SYMBOLS T :SAVE-DOC-STRINGS T :SAVE-DEFINITIONS NIL :SAVE..</div>
<div>  6: (#&lt;Anonymous Function #x8BFB046&gt; #&lt;COMPILED-LEXICAL-CLOSURE #x913EC66&gt;)</div><div>  7: ((:INTERNAL SWANK:COMPILE-FILE-FOR-EMACS))</div><div>  8: (SWANK::MEASURE-TIME-INTERVAL #&lt;COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK:COMPILE-FILE-FOR-EMACS) #x90BA186&gt;)</div>
<div>  9: (SWANK::COLLECT-NOTES #&lt;COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK:COMPILE-FILE-FOR-EMACS) #x90BA186&gt;)</div><div> 10: (SWANK::CALL-WITH-BUFFER-SYNTAX NIL #&lt;COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK:COMPILE-FILE-FOR-EMACS) #x90BA1B6&gt;)</div>
<div> 11: (CCL::CALL-CHECK-REGS SWANK:COMPILE-FILE-FOR-EMACS &quot;d:/tmp/test.lisp&quot; T NIL)</div><div> 12: (SWANK::EVAL-FOR-EMACS (SWANK:COMPILE-FILE-FOR-EMACS &quot;d:/tmp/test.lisp&quot; T &#39;NIL) &quot;COMMON-LISP-USER&quot; 65)</div>
<div> 13: ((:INTERNAL SWANK::SPAWN-WORKER-THREAD))</div><div> 14: (#&lt;Anonymous Function #x8C07576&gt; #&lt;Compiled-function SWANK:SWANK-DEBUGGER-HOOK #x8CC696E&gt; #&lt;Compiled-function (:INTERNAL SWANK::SPAWN-WORKER-THREAD) (Non-Global)  #x8C552D6&gt;)</div>
<div> 15: (SWANK::CALL-WITH-BINDINGS ((*STANDARD-OUTPUT* . #&lt;SWANK-BACKEND::SLIME-OUTPUT-STREAM #x8D2422E&gt;) (*STANDARD-INPUT* . #&lt;SWANK-BACKEND::SLIME-INPUT-STREAM #x8D24466&gt;) ..))) #&lt;COMPILED-LEXICAL-CLOSURE (..</div>
<div> 16: (SWANK::CALL-WITH-CONNECTION #&lt;CONNECTION #x8D053BE&gt; #&lt;Compiled-function (:INTERNAL SWANK::SPAWN-WORKER-THREAD) (Non-Global)  #x8C552D6&gt;)</div><div> 17: (SWANK::CALL-WITH-BINDINGS NIL #&lt;COMPILED-LEXICAL-CLOSURE (:INTERNAL SWANK::SPAWN-WORKER-THREAD) #x90BA426&gt;)</div>
<div> 18: (CCL::RUN-PROCESS-INITIAL-FORM #&lt;PROCESS worker(28) [Active] #x90B4C3E&gt; (#&lt;COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x90B4AFE&gt;))</div><div> 19: ((:INTERNAL (CCL::%PROCESS-PRESET-INTERNAL (PROCESS))) #&lt;PROCESS worker(28) [Active] #x9002276&gt; (#&lt;COMPILED-LEXICAL-CLOSURE (:INTERNAL CCL::%PROCESS-RUN-FUNCTION) #x9002136&gt;))</div>
<div> 20: ((:INTERNAL CCL::THREAD-MAKE-STARTUP-FUNCTION))</div><div><br></div></div>