Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/5/84; site angband.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!genrad!teddy!panda!talcott!harvard!seismo!ut-sally!mordor!angband!sjc From: sjc@angband.UUCP (Steve Correll) Newsgroups: net.lang.f77 Subject: Re: Equivalence problem Message-ID: <44@angband.UUCP> Date: Thu, 24-Jan-85 21:00:51 EST Article-I.D.: angband.44 Posted: Thu Jan 24 21:00:51 1985 Date-Received: Sun, 27-Jan-85 05:12:30 EST Distribution: net Organization: S-1 Project, LLNL Lines: 30 Here's an even simpler demonstration of the phenomenon: IMPLICIT DOUBLE PRECISION (A-H,O-Z) DIMENSION W(10),NW(2) EQUIVALENCE (WW,NW(1)),(NQ,NW(2)) C MEMORY MAP OF WW, NW AND NQ C WORD: 1 2 C WW (..............) C NW (...1..)(...2..) C NQ (......) C ww=0.0 NQ=10 write(*,*)'ww,nw(1),nw(2),nq',ww,nw(1),nw(2),nq temp=ww ww=temp write(*,*)'ww,nw(1),nw(2),nq',ww,nw(1),nw(2),nq end The output is: ww,nw(1),nw(2),nq 0. 0 10 10 ww,nw(1),nw(2),nq 0. 0 0 0 The "-S" option of f77 shows that it uses the "movd" instruction to transfer "ww" to "temp" and back again. I suspect that this normalizes the floating point value, bashing your data. -- --Steve Correll sjc@s1-c.ARPA, ...!decvax!decwrl!mordor!sjc, or ...!ucbvax!dual!mordor!sjc