Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!think!harvard!seismo!brl-adm!brl-smoke!gwyn From: gwyn@brl-smoke.ARPA (Doug Gwyn ) Newsgroups: net.lang.c Subject: Re: C builtin functions? Message-ID: <2521@brl-smoke.ARPA> Date: Thu, 10-Apr-86 11:59:15 EST Article-I.D.: brl-smok.2521 Posted: Thu Apr 10 11:59:15 1986 Date-Received: Sat, 12-Apr-86 22:18:57 EST References: <2427@brl-smoke.ARPA> <1224@ulysses.UUCP> Reply-To: gwyn@brl.ARPA Organization: Ballistic Research Lab (BRL) Lines: 19 In article <1224@ulysses.UUCP> jss@ulysses.UUCP (Jerry Schwarz) writes: >There may have been a recent change of heart, but the Feb 86 draft >stated (D.1.2): > > All external identifiers declared in any of the headers > [enumerated in the standard] are reserved, whether or not > the associated header is included. ... If the program > redefines a reserved external identifier, even with a > sematicaly equivalent form, the behavoir is implementation > defined. > >In other words, the compiler can rely on the standard defined meaning >of any of these functions, e.g. compiling a call to strcpy with an >appropriate block move instruction. But it also says somewhere (I left my copy at home) that one can #undef the function name and be assured that &function_name works, i.e. there must be an external function definition even if the compiler normally takes shortcuts.