unless dir return nil
for f in dir
when (file-exists-p f) do (delete-file f))
+ ;; Ensure async is reloaded when async.elc is deleted.
+ ;; This happen when recompiling its directory.
(load (locate-library "async"))
(let ((call-back
`(lambda (&optional ignore)
(expand-file-name invocation-name
invocation-directory))
,finish-func
+ ;; Ensure we use the right file when the .elc have
+ ;; been deleted by using `locate-library'.
"-Q" "-l" ,(locate-library "async")
"-batch" "-f" "async-batch-invoke"
(if async-send-over-pipe