(in-package :cl-user)
;; No stepper support on some platforms.
-#-(or x86 x86-64 ppc)
+#-(or x86 x86-64 ppc sparc mips)
(sb-ext:quit :unix-status 104)
(defun fib (x)
(defvar *cerror-called* nil)
+(define-condition cerror-break (error) ())
+
(defun fib-break (x)
(declare (optimize debug))
(if (< x 2)
(progn
(unless *cerror-called*
- (cerror "a" "b")
+ (cerror "a" 'cerror-break)
(setf *cerror-called* t))
1)
(+ (fib-break (1- x))
results)
(invoke-restart 'step-into))))))
(setf *cerror-called* nil)
- (handler-bind ((error
+ (handler-bind ((cerror-break
(lambda (c)
(sb-impl::enable-stepping)
(invoke-restart 'continue))))
(handler-bind ((step-condition #'sb-impl::invoke-stepper))
(test-step-out)))
-(with-test (:name :step-start-from-break)
+(with-test (:name :step-start-from-break
+ :fails-on :mips)
(handler-bind ((step-condition #'sb-impl::invoke-stepper))
(test-step-start-from-break)))