X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcompiler%2Fir1tran.lisp;h=15ac812a880e39aa4724e7af0a12fea198982994;hb=da8cb4801a3ab35070f380e22aea3d260f9df8aa;hp=8f80aefc5a35f4d7b9957c2b816b24902dc6e575;hpb=49e92ee57b3b01f5862d0c6fa65f521de1688941;p=sbcl.git diff --git a/src/compiler/ir1tran.lisp b/src/compiler/ir1tran.lisp index 8f80aef..15ac812 100644 --- a/src/compiler/ir1tran.lisp +++ b/src/compiler/ir1tran.lisp @@ -447,11 +447,12 @@ (sub-find-source-paths fm (cons pos path)) ;; Otherwise store the containing form. It's ;; not perfect, but better than nothing. - (setf (gethash subform *source-paths*) - (list* 'original-source-start - *current-form-number* - pos - path))) + (unless (zerop pos) + (setf (gethash subform *source-paths*) + (list* 'original-source-start + *current-form-number* + pos + path)))) (incf pos)) (setq subform (cdr subform)) (when (eq subform trail) (return))))) @@ -873,7 +874,7 @@ (not (gethash form *source-paths*))) (let ((*current-path* (gethash forms *source-paths*))) (when *current-path* - (instrument-coverage start :progn form)))) + (instrument-coverage start nil form)))) start)) (defun record-code-coverage (info cc)