[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Better bug reports (defstruct and supersede)



My setup: MacIIcx, 8M RAM, 80M internal HD, 160M external HD, Radius 8bit/19"
display, System 7.0 (GM), 12 VM, FileShare off.
MCL 2.0b1p2, with the restart-bind-patch posted a few days ago.

Bug1 (defstruct):
Put this in a file and compile the file
-------------
(defstruct foo x)
(defun bar(u) (foo-x u))
-------------
Messages from MCL:
;Compiling "Molene:MCL:Temp.lisp"...
;Compiler warnings for "Molene:MCL:Temp.lisp" :
;   Undefined function FOO-X, in BAR.

Bug2 (supersede):
The bug does not seem to happen all the time, but I managed to find a repro-
ducible example in my setup. Since it might depend on block size on the disk,
you may want to experiment with different values.
I fill a file (in Fred) with 64 lines of 64 "x" (with a final newline). I
save and close the file as "foo.lisp". Now I type in the listener:
(with-open-file (o "ccl;foo.lisp" :direction :output :if-exists :supersede)
  (dotimes(i 23)
    (format o "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY~%")))
That's 23 lines of 35 "Y". Don't ask me Y :-)
Then I open the file in Fred, and this is what I get:
23 lines of 35 "Y"
1 line of 16 "x"
2 lines of 64 "x"
1 line of 49 "x", without final newline.

A final word: I have noticed with previous versions that some bugs depend on
the values of the various flags *xxx*. If you cannot reproduce the bugs, I'll
mail you my init file.
     Daniel Ranson (ranson@lannion.cnet.fr)