Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!watmath!clyde!caip!topaz!husc6!think!nike!ucbcad!ucbvax!hplabs!tektronix!tekig5!tekigm!phils From: phils@tekigm.UUCP (Phil Staub) Newsgroups: net.micro.amiga Subject: Re: beta 4 Message-ID: <870@tekigm.UUCP> Date: Wed, 6-Aug-86 16:28:59 EDT Article-I.D.: tekigm.870 Posted: Wed Aug 6 16:28:59 1986 Date-Received: Sat, 9-Aug-86 03:42:14 EDT References: <661@usc-oberon.UUCP> <1468@amiga.amiga.UUCP> Reply-To: phils@tekigm.UUCP (Phil Staub) Distribution: net Organization: Tektronix, Inc., Beaverton, OR. Lines: 21 Summary: Lattice re-entrancy? In article <1468@amiga.amiga.UUCP> neil@rocky.UUCP (Neil Katin) writes: > >HOWEVER, your code needs to be fully reentrant to live on this list. >Neither lattice C nor emacs are reentrant. It turns out that all BCPL >programs are. C programs can be written so that they are reentrant, >but they typically are not. > Question: I am interested to know what it is about the lattice C compiler that generates non-reentrant code. I am not familiar with this compiler, but (at least according to my understanding) any code which does not utilize static or extern variables (i.e., only uses automatics or registers) should be re-entrant in C. I also know that with some compilers, functions which return structures do so in a non-reentrant way. Are these the only non-reentrancies to which you refer, or is there a gap in my understanding about reentrancy, or is there something else about Lattice which is non-reentrant. Thanks