From: Raymond W. <Ray...@fa...> - 2004-04-17 16:34:46
|
I tried building SBCL this morning, but am getting problems in compile-cold-sbcl.lisp. Specifically, I had problems compiling src/compiler/target/insts.lisp because of two warnings about an unused variables. I tried to get around this by adding (declare (ignore ...)); see patch at end. After changing insts.lisp, I tried again, but got the same type of problem in src/compiler/target/static-fn.lisp. This time related to the unknown variable func. Both of the files that are causing trouble have been untouched for a long time, so I'm guessing that the problem lies elsewhere. I've checked build-order.lisp-expr, on the assumption that somebody might have removed :ignore-failure-p from these two files. This does not appear to be the case. Another possibility might be that unused variables may have been promoted from style-warning to warning recently... I guess this is the next thing I could check. Index: src/compiler/target/insts.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/src/compiler/ppc/insts.lisp,v retrieving revision 1.9 diff -u -r1.9 insts.lisp --- src/compiler/target/insts.lisp 10 Nov 2003 23:26:38 -0000 1.9 +++ src/compiler/target/insts.lisp 17 Apr 2004 16:10:19 -0000 @@ -281,12 +281,14 @@ aa-bit lk-bit))) t))) #'(lambda (segment posn) + (declare (ignore posn)) (let ((bo (logxor 8 bo))) ;; invert the test (emit-b-form-inst segment 16 bo bi 2 ; skip over next instruction 0 0) (emit-back-patch segment 4 #'(lambda (segment posn) + (declare (ignore posn)) (emit-i-form-branch segment target lk-p))))) )))) |
From: Christophe R. <cs...@ca...> - 2004-04-17 16:55:00
|
Raymond Wiker <Ray...@fa...> writes: > Another possibility might be that unused variables may have > been promoted from style-warning to warning recently... I guess this > is the next thing I could check. That's exactly right, yes. I did this (only during cross-compilation, not in the final executable) and was mildly surprised to find that it flushed out a couple of real bugs in the sbcl library. Clearly the kinds of things that you're finding are less interesting, but I think it is worth the slight transitional pain. If you can add enough IGNORE declarations to get it working again on ppc (I tested on alpha, x86 and sparc... hey ho) I'll be happy to apply the patch. Cheers, Christophe -- http://www-jcsu.jesus.cam.ac.uk/~csr21/ +44 1223 510 299/+44 7729 383 757 (set-pprint-dispatch 'number (lambda (s o) (declare (special b)) (format s b))) (defvar b "~&Just another Lisp hacker~%") (pprint #36rJesusCollegeCambridge) |
From: Raymond W. <Ray...@fa...> - 2004-04-17 23:04:05
Attachments:
sbcl.patch
|
Christophe Rhodes writes: > Raymond Wiker <Ray...@fa...> writes: > > > Another possibility might be that unused variables may have > > been promoted from style-warning to warning recently... I guess this > > is the next thing I could check. > > That's exactly right, yes. I did this (only during cross-compilation, > not in the final executable) and was mildly surprised to find that it > flushed out a couple of real bugs in the sbcl library. Clearly the > kinds of things that you're finding are less interesting, but I think > it is worth the slight transitional pain. > > If you can add enough IGNORE declarations to get it working again on > ppc (I tested on alpha, x86 and sparc... hey ho) I'll be happy to > apply the patch. Ok, here's a set of patches that enables me to build under MacOSX. #+nil is probably not the right way of "fixing" static-fn.lisp :-) |
From: Christophe R. <cs...@ca...> - 2004-04-19 11:28:23
|
Raymond Wiker <Ray...@fa...> writes: > Ok, here's a set of patches that enables me to build under > MacOSX. Thank you. I've merged this into sbcl-0.8.9.51, I hope without typoing. > #+nil is probably not the right way of "fixing" static-fn.lisp :-) Well, only in the sense that the form should never have been there in the first place. Software archaeology tells us that Gary Byers did the PPC port by copying across the SPARC backend and mutating it until it ran; however, the SBCL calling convention on the sparc is subtly different to that on other platforms (a slightly different meaning to reg_CODE, if I remember correctly). In any case, yes, I've simply removed the func temporary. Cheers, Christophe -- http://www-jcsu.jesus.cam.ac.uk/~csr21/ +44 1223 510 299/+44 7729 383 757 (set-pprint-dispatch 'number (lambda (s o) (declare (special b)) (format s b))) (defvar b "~&Just another Lisp hacker~%") (pprint #36rJesusCollegeCambridge) |