Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 (Tek) 9/26/83; site orca.UUCP
Path: utzoo!watmath!clyde!burl!ulysses!mhuxl!houxm!houxz!vax135!cornell!uw-beaver!tektronix!orca!andrew
From: andrew@orca.UUCP (Andrew Klossner)
Newsgroups: net.lang.c
Subject: Re: C compiler for pdp-11 under RSX
Message-ID: <873@orca.UUCP>
Date: Tue, 5-Jun-84 15:47:17 EDT
Article-I.D.: orca.873
Posted: Tue Jun  5 15:47:17 1984
Date-Received: Wed, 6-Jun-84 07:39:21 EDT
References: <1880@sdccsu3.UUCP>, <192@dicomed.UUCP> <2849@brl-vgr.ARPA>
Organization: Tektronix, Wilsonville OR
Lines: 21


	"I believe they [Whitesmiths] may also be removing the
	requirement that all extern storage definitions (not
	declarations) be initialized exactly once among all load
	modules."

They can't.  Remember that Whitesmiths' original claim to fame was in
providing C compilers for a great many machines running operating
systems other than Unix.

On many systems, the loader doesn't speak COMMON blocks and requires
that a single module (file) EXPORT a symbol and that all other modules
IMPORT it.  When compiling C code a file at a time, there is no way to
do this with the existing language definition.

The language mod allows a global symbol to be EXPORTed when
initialized, IMPORTed when not initialized.  I can't think of a
language change which is much less painful and which will satisfy this
class of linkers.

  -- Andrew Klossner   (decvax!tektronix!orca!andrew)      [UUCP]
                       (orca!andrew.tektronix@rand-relay)  [ARPA]