Newsgroups: comp.lang.c
Path: utzoo!henry
From: henry@zoo.toronto.edu (Henry Spencer)
Subject: Re: low level optimization
Message-ID: <1991Apr18.185442.7546@zoo.toronto.edu>
Date: Thu, 18 Apr 1991 18:54:42 GMT
References: <21660@lanl.gov> <1991Apr17.190243.24691@watmath.waterloo.edu> <21703@lanl.gov> <1991Apr18.124836.5686@watmath.waterloo.edu> <21818@lanl.gov>
Organization: U of Toronto Zoology

In article <21818@lanl.gov> jlg@cochiti.lanl.gov (Jim Giles) writes:
>    ... Translated files may be linked with previously
>    translated libraries to produce an executable program.

Note that there is no definition of what "translation" means.  It could
mean something as trivial as tokenizing the source and storing it for
later processing.  It does not have to mean classical compilation.

>Note: the standard specifically says that files may be compiled
>in any order and that the only standard communication between files
>is through external variables and functions.

No, it says that they may be *translated* in any order, which does
not necessarily mean compilation.  As for the communication, note the
discussion in 2.1.2.3, which basically says that the implementation
can do anything it pleases so long as the externally-visible results
of running the program remain much the same.  Portable user code cannot
rely on other communication paths, but the implementation can use any
information it can get.
-- 
And the bean-counter replied,           | Henry Spencer @ U of Toronto Zoology
"beans are more important".             |  henry@zoo.toronto.edu  utzoo!henry
