1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
;;; -*- Lisp -*-
;;; test asdf:try-recompiling restart
(defvar *caught-error* nil)
(delete-file-if-exists "try-reloading-dependency.asd")
(asdf::clear-defined-systems)
(handler-bind
((error #'(lambda (c)
(format t "~&Caught error ~s" c)
(setf *caught-error* t)
(concatenate-files '("try-reloading-dependency.hidden") "try-reloading-dependency.asd")
(DBG "trlc1 5")
(multiple-value-bind (name mode) (find-symbol* :retry :asdf)
(assert (eq mode :external) () "Mode of ~s was not external" name)
(let ((restart (find-restart name c)))
(assert restart)
(when restart (invoke-restart restart)))))))
(load-system 'try-reloading-1))
(assert *caught-error*)
|