;; Make sure the backtrace isn't stunted in
;; any way. (Depends on running in the main
- ;; thread.)
- (let ((end (last backtrace 2)))
+ ;; thread.) FIXME: On Windows we get two
+ ;; extra foreign frames below regular frames.
+ (let ((end (last backtrace #-win32 2 #+win32 4)))
(unless (equal (caar end)
- (if *show-entry-point-details*
- '(sb-c::tl-xep sb-impl::toplevel-init)
- 'sb-impl::toplevel-init))
+ 'sb-impl::toplevel-init)
(print (list :backtrace-stunted (caar end)))
(setf result nil)))
(return-from outer-handler)))))
;; bug 353: This test fails at least most of the time for x86/linux
;; ca. 0.8.20.16. -- WHN
- (with-test (:name (:undefined-function :bug-356)
- :fails-on '(or (and :x86 :linux) :alpha))
+ (with-test (:name (:undefined-function :bug-353)
+ ;; This used to have fewer :fails-on features pre-0.9.16.38,
+ ;; but it turns out that the bug was just being masked by
+ ;; the presence of the IR1 stepper instrumentation (and
+ ;; is thus again failing now that the instrumentation is
+ ;; no more).
+ :fails-on '(or :x86 :x86-64 :alpha))
(assert (verify-backtrace
(lambda () (test #'not-optimized))
(list *undefined-function-frame*
(list '(flet not-optimized))
(list '(flet test) #'not-optimized))))))
-;;; Division by zero was a common error on PPC. It depended on the
+;;; Division by zero was a common error on PPC. It depended on the
;;; return function either being before INTEGER-/-INTEGER in memory,
-;;; or more than MOST-POSITIVE-FIXNUM bytes ahead. It also depends on
-;;; INTEGER-/-INTEGER calling SIGNED-TRUNCATE. I believe Raymond Toy
+;;; or more than MOST-POSITIVE-FIXNUM bytes ahead. It also depends on
+;;; INTEGER-/-INTEGER calling SIGNED-TRUNCATE. I believe Raymond Toy
;;; says that the Sparc backend (at least for CMUCL) inlines this, so
;;; if SBCL does the same this test is probably not good for the
;;; Sparc.
(loop while (sb-thread:thread-alive-p thread)))
(disable-debugger)
+
+(write-line "/debug.impure.lisp done")