Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!bellcore!decvax!decwrl!pyramid!hplabs!amdahl!proper!hoptoad!gnu From: gnu@hoptoad.UUCP Newsgroups: net.lang.c Subject: Re: Redefining C Builtin Functions Message-ID: <725@hoptoad.uucp> Date: Mon, 21-Apr-86 23:19:19 EST Article-I.D.: hoptoad.725 Posted: Mon Apr 21 23:19:19 1986 Date-Received: Wed, 23-Apr-86 22:59:28 EST References: <2524@brl-smoke.ARPA> <2528@brl-smoke.ARPA> <276@usc-oberon.UUCP> Organization: Nebula Consultants in San Francisco Lines: 19 In article <276@usc-oberon.UUCP>, blarson@usc-oberon.UUCP (Bob Larson) writes: > In article <2528@brl-smoke.ARPA> gwyn@brl.ARPA writes: > > The only > >relatively safe redefinition would be one with a standard- > >conforming interface, but then why not just use the one > >provided? > > > Perhaps because library authors arn't always perfect, or just for > performance. (Is your strcmp optimised for 10Mbyte strings?) Most of the time when I try this, it doesn't work though, due to the "1 source file = 1 loadable module" semantics of Unix linkers. If I try to replace one routine with a non-buggy version, I end up having to replace the whole source file, containing some large number of routines that I might not even have source for. What does the ANSI C standard say about this? -- John Gilmore {sun,ptsfa,lll-crg,ihnp4}!hoptoad!gnu jgilmore@lll-crg.arpa