* Now that *CURRENT-PATH* is bound first by PROCESS-TOPLEVEL-FORM
make FIND-ERROR-CONTEXT prefer NODE-SOURCE-PATH *CURRENT-PATH* --
otherwise the more accurate source path in the node is never used.
(Experimentally it seems that *CURRENT-PATH* is never more
accurate.)
Everything seems OK, but the whole source path mechanism could
probably us an audit, and possibly some refactoring.
* ADD-TEST-CONSTRAINTS should bind *COMPILER-ERROR-CONTEXT* around
the call to SPECIALIZER-TYPE in case of undefined types. (Left out
from last patch by accident.)
(ok-lvar-lambda-var (first args) constraints)
(if (ctype-p val)
val
- (specifier-type val))
+ (let ((*compiler-error-context* use))
+ (specifier-type val)))
nil)))))
((eq eql)
(let* ((arg1 (first args))
(let ((context *compiler-error-context*))
(if (compiler-error-context-p context)
(values context t)
- (let* ((path (or (and (boundp '*current-path*) *current-path*)
- (if context
- (node-source-path context)
- nil)))
+ (let* ((path (or (and (node-p context) (node-source-path context))
+ (and (boundp '*current-path*) *current-path*)))
(old
(find (when path (source-path-original-source path))
(remove-if #'null old-contexts)
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"1.0.28.38"
+"1.0.28.39"