At 9:36 AM -0800 11/22/00, Matt Dillon wrote:
> [...] When you fclose() something or otherwise terminate a
> structure, it's gone. Anything else is illegal. *internally*
> our libc assumes that ferror() is legal after an fclose()
> because, well, it's true... but only for internal library
> functions. Nobody outside the library can legally make that
> assumption and it could also be argued that even within the
> library those types of assumptions should not be made unless
> absolutely necessary.
Hmm. That does bring up an important point. The code with the
fclose/ferror combination *is* something I was taking directly
out of libc. So, it would have more right than most code to
make explicit assumptions about the implementation of other
libc routines. I had not thought of it in that way, mainly
because I pulled it out of libc at least five years ago, and
it didn't cause me any trouble until this month.
> There isn't much we can do about the issue except fix the
> instances of mis-programming as they show up.
Yep. Oh well. On to the next tempest, please pass the tea.
--
---
Garance Alistair Drosehn = [EMAIL PROTECTED]
Senior Systems Programmer or [EMAIL PROTECTED]
Rensselaer Polytechnic Institute or [EMAIL PROTECTED]
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message