Path: utzoo!mnetor!uunet!sdrc!scjones From: scjones@sdrc.UUCP (Larry Jones) Newsgroups: comp.sys.ibm.pc Subject: Re: bug in Turbo C 1.5 Message-ID: <197@sdrc.UUCP> Date: 27 Jan 88 04:11:39 GMT References: <5298@cit-vax.Caltech.Edu> <2490@emory.uucp> Organization: Structural Dynamics Research Corp., Cincinnati Lines: 15 Summary: Don't blame ANSI In article <2490@emory.uucp>, platt@emory.uucp (Dan Platt) writes: > > The version 1.5 fixes a "bug" in the 1.0 version by NOT checking for overwrites > in the memcopy function. The memmove function preserves the old (safe) > technique. [by following a standard like ANSI a lot of inferiorities are > introduced] Sorry, but I get tired of reading statements like these. For the last time, ANSI did not REQUIRE anyone to change the way memcpy works. ANSI does not say that memcpy can't check for overlapping moves and do them correctly, it merely affirms the fact that many implementations don't, quite a lot of people expect memcpy to be blindingly fast, and thus said that not checking was OK. For those who need a function to handle overlapping moves correctly, ANSI added memmove. So quit blaming ANSI and start blaming { Microsoft, Borland, ... } 'cause THEY'RE the ones that decided to change their implementations.