[comp.lang.c] Are all identifiers in standard libraries reserved?

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