[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
tape bug
Date: Tue, 12 Jul 88 18:22 CDT
From: maeda@mcc.com (Christopher Maeda)
I was puzzled when our machines couldn't read carry tapes that they had
dumped. They kept saying that the list of items dumped could not be
found. I poked around a bit and noticed that carry-load made sure a
certain symbol read was eq to :dump-list. The symbol it was testing was
:|dump-list|. This bug resulted because print-plist called princ to
dump :dump-list. The print function for symbols looks at the special
si:*princase* to see how to print them. If this variable is set to
:downcase during a carry dump, the tape cannot be read. When I set it
to :upcase during the dump, the tape can be read. How's that for
obscure?
Sounds like a job for SI:WITH-STANDARD-IO-ENVIRONMENT. This should
always be used when using PRINT and READ for program-to-program
communication, as opposed to communicating with the user. It makes
sure that all the printer/reader control variables are bound to
well-known values. Unfortunately, many parts of the system are still
missing this.
- References:
- tape bug
- From: Christopher Maeda <maeda@MCC.COM>