Path: utzoo!mnetor!uunet!husc6!cmcl2!brl-adm!brl-smoke!gwyn From: gwyn@brl-smoke.ARPA (Doug Gwyn ) Newsgroups: comp.lang.c Subject: Re: noalias, again (was extern const) Message-ID: <7553@brl-smoke.ARPA> Date: 26 Mar 88 14:38:09 GMT References: <7712@apple.Apple.Com> <7485@brl-smoke.ARPA> <10731@mimsy.UUCP> <6986@ki4pv.uucp> Reply-To: gwyn@brl.arpa (Doug Gwyn (VLD/VMB) ) Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 18 In article <6986@ki4pv.uucp> tanner@ki4pv.uucp (Dr. T. Andrews) writes: >Breaking existing, useful code is hard to justify under the banner of >existing practice. Your (Chris's) example does not illustrate this, but merely reflects your misunderstanding of what is guaranteed by existing practice. Use of strcpy() between overlapping source and destination arrays has always been an implementation-dependent gamble. The dpANS provides memmove() as a function guaranteed to be safe for such use, because existing str*() and mem*() functions were unsafe for this usage. Instead of griping about imaginary breakage of an already broken situation, you might be grateful that cognizance was taken of the problem and a solution provided. >DMR, where are you when we need you? He's working with X3J11 committee members to help get the intended functionality correctly specified in the final ANSI C standard.