Xref: utzoo alt.sys.sun:3011 comp.unix.wizards:24417 Path: utzoo!news-server.csri.toronto.edu!rutgers!dimacs.rutgers.edu!aramis.rutgers.edu!gauss.rutgers.edu!math.rutgers.edu!janowsky From: janowsky@math.rutgers.edu (Steven Janowsky) Newsgroups: alt.sys.sun,ru.qa,comp.unix.wizards Subject: optimazion bug in C compiler on SS1+? Message-ID: Date: 11 Mar 91 20:31:40 GMT References: <1991Mar11.185411.2414@ssd.kodak.com> Followup-To: alt.sys.sun Distribution: na Organization: Rutgers Univ., New Brunswick, N.J. Lines: 21 The following program (part of a random number generator) generates NaN when compiled O2, O3, or O4 but works as expected if O1 or no optimiztion. SS1+ running 4.0.3c Any clues? (Please mail response to janowsky@hilbert.rutgers.edu) #include main() { int seed; double rand_a, rand_t; seed = 34; rand_a= -1.0 + 1.0 / 2147483648.0; rand_t=seed/2147483648.0; printf("%g\n",rand_t); rand_t *= 16807; rand_t += rand_a * ((int) rand_t); if(rand_t >= 1.0) rand_t += rand_a; printf("%g\n",rand_t); }