Skip to content

Commit

Permalink
0.6.9:
Browse files Browse the repository at this point in the history
	MNA debug/error patch: fixes to help view SIGINT problems
  • Loading branch information
William Harold Newman committed Nov 28, 2000
1 parent 6df93cd commit 943f38e
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 41 deletions.
31 changes: 0 additions & 31 deletions TODO
Original file line number Diff line number Diff line change
Expand Up @@ -63,22 +63,6 @@ FIX:
?? possibility 3: Fix the breakpoint-based TRACE facility so that
it always works.
-------------------------------------------------------------------------------
PROBLEM:
When cross-compiling host-byte-comp.lisp, I get bogus
warnings
caught STYLE-WARNING:
undefined function: %%DEFCONSTANT
caught STYLE-WARNING:
This function is undefined:
%%DEFCONSTANT
MUSING:
The best way to clean this up would be as a side-effect of
a larger cleanup, making all the %%DEFFOO stuff use EVAL-WHEN
instead of IR1 magic.
There's probably some way to do it with a quick local hack too.
FIX:
??
-------------------------------------------------------------------------------
PROBLEM:
My system of parallel build directories seems to add
complexity without adding value.
Expand Down Expand Up @@ -122,31 +106,16 @@ PROBLEM:
thing in itself, but might be a fair amount of work.)
FIX:
?? Delete, delete, delete.
-------------------------------------------------------------------------------
PROBLEM:
The hashing code is new and should be tested.
FIX:
?? Enable the existing test code.
===============================================================================
other known issues with no particular target date:

user manual including, at a minimum, updated versions of the
CMU CL user manual information on the compiler and the alien
interface

bugs listed on the man page

more regression tests

various bugs fixed in CMUCL since this code was forked off of it
ca. 19980801, since most of these haven't been fixed yet in SBCL

byte compilation of appropriate parts of the system, so that the
system core isn't so big

uninterning needed-only-at-init-time stuff after init is complete,
so that the system core isn't so big

Search for unused external symbols (ones which are not bound, fbound,
types, or whatever, and also have no other uses as e.g. flags) and
delete them. This should make the system core a little smaller, but
Expand Down
14 changes: 7 additions & 7 deletions src/code/debug-int.lisp
Original file line number Diff line number Diff line change
Expand Up @@ -1112,9 +1112,8 @@
(without-gcing
(let* ((component-ptr (component-ptr-from-pc
(sb!vm:context-pc context)))
(code (if (sap= component-ptr (int-sap #x0))
nil ; FIXME: UNLESS might be clearer than IF.
(component-from-component-ptr component-ptr))))
(code (unless (sap= component-ptr (int-sap #x0))
(component-from-component-ptr component-ptr))))
(when (null code)
(return (values code 0 context)))
(let* ((code-header-len (* (get-header-data code)
Expand All @@ -1127,8 +1126,10 @@
(unless (<= 0 pc-offset
(* (code-header-ref code sb!vm:code-code-size-slot)
sb!vm:word-bytes))
;; We were in an assembly routine. Therefore, use the LRA as
;; the pc.
;; We were in an assembly routine. Therefore, use the
;; LRA as the pc.
;;
;; FIXME: Should this be WARN or ERROR or what?
(format t "** pc-offset ~S not in code obj ~S?~%"
pc-offset code))
(return
Expand Down Expand Up @@ -1204,8 +1205,7 @@
(elsewhere-p
(>= pc (sb!c::compiled-debug-function-elsewhere-pc
(svref function-map 0)))))
;; FIXME: I don't think SB!C is the home package of INDEX.
(declare (type sb!c::index i))
(declare (type sb!int:index i))
(loop
(when (or (= i len)
(< pc (if elsewhere-p
Expand Down
7 changes: 5 additions & 2 deletions src/code/late-target-error.lisp
Original file line number Diff line number Diff line change
Expand Up @@ -642,11 +642,11 @@
(arithmetic-error-operation condition)
(arithmetic-error-operands condition))))))

(define-condition division-by-zero (arithmetic-error) ())
(define-condition division-by-zero (arithmetic-error) ())
(define-condition floating-point-overflow (arithmetic-error) ())
(define-condition floating-point-underflow (arithmetic-error) ())
(define-condition floating-point-inexact (arithmetic-error) ())
(define-condition floating-point-invalid-operation (arithmetic-error) ())
(define-condition floating-point-invalid-operation (arithmetic-error) ())

(define-condition print-not-readable (error)
((object :reader print-not-readable-object :initarg :object))
Expand All @@ -657,6 +657,8 @@
(format stream "~S cannot be printed readably." obj)))))

(define-condition reader-error (parse-error stream-error)
;; FIXME: Do we need FORMAT-CONTROL and FORMAT-ARGUMENTS when
;; we have an explicit :REPORT function? I thought we didn't..
((format-control
:reader reader-error-format-control
:initarg :format-control)
Expand Down Expand Up @@ -688,6 +690,7 @@
;;; floating point exceptions?
(define-condition floating-point-exception (arithmetic-error)
((flags :initarg :traps
:initform nil
:reader floating-point-exception-traps))
(:report (lambda (condition stream)
(format stream
Expand Down
2 changes: 1 addition & 1 deletion version.lisp-expr
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,4 @@
;;; versions, and a string like "0.6.5.12" is used for versions which
;;; aren't released but correspond only to CVS tags or snapshots.

"0.6.8.26"
"0.6.9"

0 comments on commit 943f38e

Please sign in to comment.