Newsgroups: comp.sys.acorn
Path: utzoo!utgpu!watserv1!watdragon!rose!ccplumb
From: ccplumb@rose.uwaterloo.ca (Colin Plumb)
Subject: Re: C versus ARM take 2
Message-ID: <1991Feb26.220312.28827@watdragon.waterloo.edu>
Sender: daemon@watdragon.waterloo.edu (Owner of Many System Processes)
Organization: University of Waterloo
References: <807@utrcu1.UUCP> <033143.8965@timbuk.cray.com> <1991Feb25.141407.10162@watdragon.waterloo.edu> <KERS.91Feb26093544@cdollin.hpl.hp.com>
Date: Tue, 26 Feb 1991 22:03:12 GMT
Lines: 26

kers@hplb.hpl.hp.com (Chris Dollin) wrote:
>
>Colin Plumb writes:
>
>   ...
>   This [only including in an image the particular units needed, not a whole
>   object file]  is not necessarily true; a more intelligent linker (heck, even
>   the Unix linker can do this) only pulls in the necessary functions and
>   ignores the file boundaries.
>
>Generally wrong: most Unix linkers will pull in the whole module (file) if any
>of its components are required. [This fact is standard flamewar fodder.]

Well, I might be wrong; I'm no expert.  I just read the linker man page:

...
     If any argument is a library, it is searched exactly once at
     the point it is encountered in the argument list.  Only
     those routines defining an unresolved external reference are
     loaded.
...

(this is pretty vanilla 4.3BSD) and it seemed to describe the desired
behaviour.
-- 
	-Colin
