Mail Archives: djgpp-workers/1996/04/14/13:01:55
> What are the chances of the transfer buffer _not_ being aligned
> on a paragraph? Aren't we just wasting time doing "& 15" all
> other the library?
I'd rather not assume that, even if it is true. Some rogue program
(gdb?) may move the transfer buffer out of the way, and not align it.
Could be. Given that an unaligned transfer buffer is a _bad_
idea it could also be argued that complete disaster right away
would be better. Then again, "if it ain't broke don't fix it."
> Another thing: is it valid for _any_ library function to call
> malloc? If it is, then how about "...any library function
> that would have been a syscall under Unix"?
write() was a special case for emacs, which write()s the file out but
has a special malloc that may move your buffer out from under you
whenever you call it.
Here I am arguing that Emacs is not a special case. It is just
another program that happens to define a function called malloc().
Is this allowed to change the semantics of library functions?
[probably yes]. Is it allowed to change the semantics of
"syscalls"? [probably no]
library calls: printf, fopen, ...
syscalls: write, open, ...
On msdos the distinction is, of course, not razor blade sharp.
Morten
- Raw text -