cspw.ruccx1@p0.f4.n494.z5.fidonet.org (cspw ruccx1) (05/08/90)
I've been using Mike Banahan's "The C Book" as a source for ANSI C until my official report arrives. Its a nice book, able to answer most of my questions. I'd like to confirm this paragraph, (pg. 190) though ... "All external identifiers declared in any of the library headers are reserved. They must not be used, or redefined, for any other purpose. In some cases they may be 'magic' - their names may be known to the compiler and cause it to use special methods to implement them." "All external names and macro names that begin with an underscore also fit the category described above. They too are reserved." If I inadvertantly write my own sort routine and call it qsort, am I really at risk, even if I don't import the library that defines the standard qsort? A second implication of this rule is that a compiler writer could build knowledge of all the standard libraries into his system, so that including a standard library would just enable some definitions, and would not need to physically access the stored header files. (They need not even exist!) By implication, you would not be allowed to change any existing code in a standard header file. (Are you allowed to add your own definitions to standard header files?) Have I missed something, or do I just enter this interpretation under the 'most demented' category of abstruse interpretations of the standard? Pete -- uucp: uunet!m2xenix!puddle!5!494!4.0!cspw.ruccx1 Internet: cspw.ruccx1@p0.f4.n494.z5.fidonet.org