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!smoke!rbj@icst-cmr From: rbj@icst-cmr (root) Newsgroups: net.lang.c Subject: C Builtin Funxions Message-ID: <2524@brl-smoke.ARPA> Date: Thu, 10-Apr-86 12:06:26 EST Article-I.D.: brl-smok.2524 Posted: Thu Apr 10 12:06:26 1986 Date-Received: Sat, 12-Apr-86 22:19:25 EST Sender: news@brl-smoke.ARPA Lines: 42 > In article <824@ttrdc.UUCP> levy@ttrdc.UUCP (Daniel R. Levy) writes: > > >In article <41@cbmvax.cbmvax.cbm.UUCP>, daveh@cbmvax.UUCP writes: > >> > >>C, LISP, Pascal, BASIC, etc., all have standard built-in functions. > > > >C has standard built-in functions???? > > > >Gee, that's a new one on me. EVERY function called from C is an external > >function, or at least it was when C began. This includes things like write(), > >read(), printf(), math functions, etc. There's no such thing as, for example, > >a C builtin equivalent to the FORTRAN MAX() or the Basic INPUT which does the > >right thing no what the arguments' types are, or where the returned result is > >stored. ... > > That may be the original practice, but the X3J11 (ANSI C) drafts, now quite > clearly say that all functions defined in the library are reserved (ie, you > can't redefine them), and may be builtin to the compiler. I believe that the > /usr/group standard (& probably P1003) reserved every function from all major > UNIX* variants. It may be that redefining these reserved library functions > will continue to work in *YOUR* implementation, but it's not guaranteed. > > Michael Meissner, Data General > ...{ decvax, ihnp4 }!mcnc!rti-sel!dg_rtp!meissner > > *UNIX is a trademark of AT&T in the U.S.A. and other countries. Before I flame at the bogosity of this proposed madness, I will entertain suggestions as to why this decision was made. Fire away. However, most builtin funxions will accept user redefinitions. Will this be allowed, or must we resort to #defines to avoid hacking up the sources to change every funxion we wish to redefine. And will this even work? It's conceivable that the preprocessor could be integrated with the compiler proper and not a separate pass/program in some implementations. On another note, `sizeof' is NOT a builtin funxion. It is merely a funny way of writing an implementation defined constant. ASM *is* a builtin in many implementations. (Root Boy) Jim Cottrell