careful about rounding possibly closing open bounds. (lp#793771)
* bug fix: SB-POSIX:SYSCALL-ERROR's argument is now optional. (accidental
backwards incompatible change in 1.0.48.27)
+ * bug fix: occasional debugger errors in when a type-error occured in a
+ function with dynamic-extent &rest list.
changes in sbcl-1.0.49 relative to sbcl-1.0.48:
* minor incompatible change: WITH-LOCKED-HASH-TABLE no longer disables
:deleted ((push (frame-call-arg element location frame) reversed-result))
:rest ((lambda-var-dispatch (second element) location
nil
- (progn
- (setf reversed-result
- (append (reverse (sb!di:debug-var-value
- (second element) frame))
- reversed-result))
+ (let ((rest (sb!di:debug-var-value (second element) frame)))
+ (if (listp rest)
+ (setf reversed-result (append (reverse rest) reversed-result))
+ (push (make-unprintable-object "unavailable &REST argument")
+ reversed-result))
(return-from enumerating))
(push (make-unprintable-object
"unavailable &REST argument")
(notany #'sb-debug::stack-allocated-p (cdr frame))))
(dx-arg-backtrace dx-arg))))))
+(with-test (:name :bug-795245)
+ (assert
+ (eq :ok
+ (catch 'done
+ (handler-bind
+ ((error (lambda (e)
+ (declare (ignore e))
+ (handler-case
+ (sb-debug:backtrace 100 (make-broadcast-stream))
+ (error ()
+ (throw 'done :error))
+ (:no-error ()
+ (throw 'done :ok))))))
+ (apply '/= nil 1 2 nil))))))
+
;;;; test infinite error protection
(defmacro nest-errors (n-levels error-form)