Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site ulysses.UUCP Path: utzoo!watmath!clyde!burl!ulysses!jss From: jss@ulysses.UUCP (Jerry Schwarz) Newsgroups: net.lang.c Subject: Re: structured assembler (BASIC) [Really: C builtin functions?] Message-ID: <1224@ulysses.UUCP> Date: Tue, 8-Apr-86 17:40:22 EST Article-I.D.: ulysses.1224 Posted: Tue Apr 8 17:40:22 1986 Date-Received: Thu, 10-Apr-86 00:48:43 EST References: <2427@brl-smoke.ARPA> Organization: AT&T Bell Laboratories, Murray Hill Lines: 25 > > These functions should not be thought of as "built-in"; > indeed, X3J11 has decreed that there must be an actual > extern definition of each required function, even when the > usual usage would be implemented with preprocessor macros. > But the interface IS "standardized" now (or as soon as > the official X3J11 standard is approved). 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. This is the normal meaning of "built-in" function. Jerry Schwarz