Machine specific predefined names
Mark Biggar
markb at sdcrdcf.UUCP
Sat Apr 2 04:40:21 AEST 1988
In article <3264 at haddock.ISC.COM> karl at haddock.ima.isc.com (Karl Heuer) writes:
|In article <598 at tuvie> rcvie at tuvie.UUCP (Alcatel-ELIN Forsch.z.) writes:
||In article <3225 at haddock.ISC.COM> karl at haddock.ima.isc.com (Karl Heuer) writes:
||>If you try to redefine *any* standard routine -- whether macro or function
||>-- the result should be, and is, undefined. Why should the user be forced
||>to learn the implementation details?
||Just try the portable way and noone has to learn anything but that there
||*are* some routines implemented as functions and some as macros:
|| #undef putchar
|| <your putchar-macro/function>
|That isn't portable. After you've redefined something, you have no way of
|knowing whether other library routines (e.g. puts) will be using your putchar
|or the standard one.
I thought the standard included a guarantee that if you did the above that
the libraries would still continue to use the original definition.
In fact the whole reason for the necessity of using the #undef etc. was to
allow for that guarantee.
Mark Biggar
{allegra,burdvax,cbosgd,hplabs,ihnp4,akgua,sdcsvax}!sdcrdcf!markb
markb at rdcf.sm.unisys.com
More information about the Comp.lang.c
mailing list