------- Comment #11 from ray at ultramarine dot com 2006-05-27 20:53 ------- Subject: Re: Problems with direct access io
I believe I said that in the bug report. On Sat, 27 May 2006, tkoenig at gcc dot gnu dot org wrote: > > > ------- Comment #10 from tkoenig at gcc dot gnu dot org 2006-05-27 19:10 > ------- > This bug does not occur with g77, as this version of the > test program shows: > > $ cat testdirect.f > program testdirect > implicit none > integer a (100) > integer i,j,k,ier > real x > integer myrand(100) > > data myrand / 13, 9, 34, 41, 25, 98, 6, 12, 11, 44, 79, 3, > & 64, 61, 77, 57, 59, 2, 92, 38, 71, 64, 31, 60, 28, 90, 26, > & 97, 47, 26, 48, 96, 95, 82, 100, 90, 45, 71, 71, 67, 72, > & 76, 94, 49, 85, 45, 100, 22, 96, 48, 13, 23, 40, 14, 76, 99, > & 96, 90, 65, 2, 8, 60, 96, 19, 45, 1, 100, 48, 91, 20, 92, > & 72, 81, 59, 24, 37, 43, 21, 54, 68, 31, 19, 79, 63, 41, > & 42, 12, 10, 62, 43, 9, 30, 9, 54, 35, 4, 5, 55, 3, 94 / > > do i=1,100 > a(i) = 0 > end do > C call random_seed() > open(unit=15,file="testdirectio",access="direct", > & form="unformatted",recl=4) > do i=1,100 > k = myrand(i) > ! k= int(x * 100)+1 > a(i)=k > write(unit=15, rec=k) k > end do > > do j=1,100 > read(unit=15, rec=a(j), iostat=ier) k > if (ier.ne.0) then > print *, "No Record: ", j > else > if (a(j) .ne. k) print *, "Bad Record at ",a(j), k > endif > enddo > close(unit=15, status="delete") > end > $ g77 testdirect.f > $ ./a.out > $ gfortran testdirect.f > $ ./a.out > Bad Record at 13 14 > Bad Record at 34 0 > Bad Record at 25 26 > Bad Record at 98 99 > Bad Record at 6 11 > Bad Record at 11 0 > Bad Record at 44 45 > Bad Record at 64 65 > Bad Record at 61 0 > Bad Record at 77 0 > Bad Record at 57 59 > Bad Record at 2 0 > Bad Record at 38 0 > Bad Record at 71 72 > Bad Record at 64 65 > Bad Record at 60 0 > Bad Record at 28 0 > Bad Record at 90 98 > Bad Record at 26 34 > Bad Record at 97 0 > Bad Record at 47 48 > Bad Record at 26 34 > Bad Record at 96 97 > Bad Record at 95 96 > Bad Record at 82 0 > Bad Record at 90 98 > Bad Record at 45 0 > Bad Record at 71 72 > Bad Record at 71 72 > Bad Record at 67 0 > Bad Record at 76 0 > Bad Record at 49 0 > Bad Record at 85 0 > Bad Record at 45 0 > Bad Record at 22 23 > Bad Record at 96 97 > Bad Record at 13 14 > Bad Record at 23 0 > Bad Record at 40 0 > Bad Record at 14 0 > Bad Record at 76 0 > Bad Record at 99 100 > Bad Record at 96 97 > Bad Record at 90 98 > Bad Record at 65 0 > Bad Record at 2 0 > Bad Record at 8 0 > Bad Record at 60 0 > Bad Record at 96 97 > Bad Record at 45 0 > $ g77 -v > Reading specs from /usr/lib/gcc/i486-linux-gnu/3.4.6/specs > Configured with: ../src/configure -v --enable-languages=c,c++,f77,pascal > --prefix=/usr --libexecdir=/usr/lib > --with-gxx-include-dir=/usr/include/c++/3.4 > --enable-shared --with-system-zlib --enable-nls --without-included-gettext > --program-suffix=-3.4 --enable-__cxa_atexit --enable-clocale=gnu > --enable-libstdcxx-debug --with-tune=i686 i486-linux-gnu > Thread model: posix > gcc version 3.4.6 (Debian 3.4.6-1) > $ gfortran -v > Using built-in specs. > Target: i686-pc-linux-gnu > Configured with: ../../gcc/trunk/configure --prefix=/home/ig25 > --enable-languages=c,fortran > Thread model: posix > gcc version 4.2.0 20060525 (experimental) > > > -- > > tkoenig at gcc dot gnu dot org changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > CC| |tkoenig at gcc dot gnu dot > | |org > OtherBugsDependingO| |19292 > nThis| | > > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27757 > > ------- You are receiving this mail because: ------- > You reported the bug, or are watching the reporter. > > -------------------+ Spam Scoring Results +------------------------ > Content analysis details: (-2.6 hits, 5.0 required) > -2.6 BAYES_00 BODY: Bayesian spam probability is 0 to 1% > [score: 0.0000] > > -------------------+ End Spam Scoring Results +----------------------- > Ultramarine, Inc. http://www.ultramarine.com Phone: 713-975-8146 Fax: 713-975-8179 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27757