Do just 1 pass over the heap in verify_dynamic_space()
[sbcl.git] / loader.lisp
blob8688d414ce8a486c1ffbaa131eadc862a5396c7e
1 (defun load-sbcl-file (file)
2 (labels ((exit-sbcl (code)
3 #+sbcl #.(if (eq :external
4 (nth-value 1 (find-symbol "EXIT" :sb-ext)))
5 `(,(find-symbol "EXIT" :sb-ext) :code code)
6 `(,(find-symbol "QUIT" :sb-ext) :unix-status code))
7 #+ccl (ccl:quit code)
8 #+abcl (ext:quit :status code)
9 #+cmucl (unix:unix-exit code)
10 #+ecl (si:quit code)
11 #+clisp (ext:quit code)
12 (return-from load-sbcl-file)))
13 (restart-case
14 (load file)
15 (abort ()
16 :report "Abort building SBCL."
17 (exit-sbcl 1)))
18 (exit-sbcl 0)))