X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcode%2Finterr.lisp;h=10f50d41000db1ac22f3a8efa9510a78009b239b;hb=cd176690400f8b6fa23faa4dc6fa8494bcbce480;hp=7aefbbc0b5ebc0c52cab419e2c2d7ae8273fe7a0;hpb=b6aa15328871678a3475e82c150b251dffb49ba1;p=sbcl.git diff --git a/src/code/interr.lisp b/src/code/interr.lisp index 7aefbbc..10f50d4 100644 --- a/src/code/interr.lisp +++ b/src/code/interr.lisp @@ -257,7 +257,7 @@ (deferr invalid-array-index-error (array bound index) (error 'simple-error :format-control - "invalid array index ~D for ~S (should be nonnegative and <~D)" + "invalid array index ~W for ~S (should be nonnegative and <~W)" :format-arguments (list index array bound))) (deferr object-not-simple-array-error (object) @@ -438,6 +438,8 @@ ;;;; INTERNAL-ERROR signal handler +(defvar *internal-error-arguments*) + (defun internal-error (context continuable) (declare (type system-area-pointer context)) (declare (ignore continuable)) @@ -453,8 +455,9 @@ (sb!vm:internal-error-arguments alien-context) (/show0 "back from INTERNAL-ERROR-ARGUMENTS, ERROR-NUMBER=..") (/hexstr error-number) - (/show0 "ARGUMENTS=..") + (/show0 "cold/low ARGUMENTS=..") (/hexstr arguments) + (multiple-value-bind (name sb!debug:*stack-top-hint*) (find-interrupted-name) (/show0 "back from FIND-INTERRUPTED-NAME") @@ -465,7 +468,7 @@ (cond ((null handler) (error 'simple-error :format-control - "unknown internal error, ~D? args=~S" + "unknown internal error, ~D, args=~S" :format-arguments (list error-number (mapcar #'(lambda (sc-offset)