[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- To: RPG at SU-AI, LSP at SU-AI
- Subject: SFA Lossage
- From: JONL at MIT-MC (Jon L White)
- Date: Tue, 27 Jan 81 08:40:00 GMT
- Cc: (BUG LISP) at MIT-MC, ejg at SU-AI
- Original-date: 27 JAN 1981 0340-EST
Date: 26 Jan 1981 1529-PST
From: Lisp files <LSP at SU-AI>
Subject: SFA Loss
Jonl, the following makes the reader lose. In particular, when it tries to
put together OXYZY it gets two nulls in a row.
The problem centers around the (ascii (car sfa-buffer)) in that changing
that to () or to (ascii 101) does not cause the lossage, which happens at
MC as well.
. . . | P O OXYZY OXYZT OXYZT | . . .
Indeed, there are a number of "screws" that we have been finding out as
the SFA feature gets more usage -- this one is due to the fact that the
ASCII function will ocasionally clobber a word of the PNBUF (a 10 word
vector which is READ's buffer for words of a forming pname). As it
happens, READLIST also has this side effect, so I put in a little code
to preserve-and-restore the portion of the PNBUF which is clobbered.
Your conjecture that some "register" was getting clobbered by the
sfa function was correct -- it's just that the "register" was this
writeable vector of words. Do a SRCCOM on the latest version of
MC:L;READER > to see how I fixed it.