From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3151 invoked by alias); 16 Nov 2001 21:36:01 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 3134 invoked by uid 71); 16 Nov 2001 21:36:00 -0000 Date: Mon, 05 Nov 2001 16:27:00 -0000 Message-ID: <20011116213600.3133.qmail@sourceware.cygnus.com> To: nobody@gcc.gnu.org Cc: gcc-prs@gcc.gnu.org, From: "Tim Prince" Subject: Re: fortran/4885: BACKSPACE example that doesn't work as of gcc/g77-3.0.x Reply-To: "Tim Prince" X-SW-Source: 2001-11/txt/msg00146.txt.bz2 List-Id: The following reply was made to PR fortran/4885; it has been noted by GNATS. From: "Tim Prince" To: "Toon Moene" , "Youngjean Jung" Cc: Subject: Re: fortran/4885: BACKSPACE example that doesn't work as of gcc/g77-3.0.x Date: Fri, 16 Nov 2001 13:30:41 -0800 I'll buy both of you a beer if we ever meet, if we can check 6 Fortran compilers without finding one which fails to implement this part of the standard correctly. But, it makes sense, in a way, and it seems g77 is following it. Even in a relatively simply language like g77, we have many non-conformant applications which just happen to have worked for quite a while, and even relative experts in the language don't always have the answer. ----- Original Message ----- From: "Toon Moene" To: "Youngjean Jung" Cc: "Tim Prince" ; Sent: Friday, November 16, 2001 12:31 PM Subject: Re: fortran/4885: BACKSPACE example that doesn't work as of gcc/g77-3.0.x > Youngjean Jung wrote: > > > I conducted many tests on the Endfile, Backspace commands. They don't > > work in the following senses: > > > > 1) Endfile command writes meaningless letters on the data file. > > 2) Endfile, Backspace combination doesn't make a 'backspace job'. > > > program test > > c > > implicit none > > integer i,k > > c > > do i=1,10 > > open(1,file='s2.dat',status='unknown',access='sequential') > > do k=10,20 > > write(1,*) i,k > > endfile 1 > > backspace 1 > > end do > > close(1) > > end do > > c > > end > > Hmmm, I get the same s2.dat as you get (Debian GNU/Linux 2.2, > gcc/g77-3.0.2): > > toon@laptop:~/g77-bugs$ cat s2.dat > 10 10 > 10 11 > 10 12 > 10 13 > 10 14 > 10 15 > 10 16 > 10 17 > 10 18 > 10 19 > 10 20 > > This seems to be in accordance with the Standard: > > 12.10.4.1 BACKSPACE Statement. > > Execution of a BACKSPACE statement causes the file connected to the > specified unit to be positioned before the preceding record. If there is > no preceding record, the position of the file is not changed. Note that > if the preceding record is an endfile record, the file becomes > positioned before the endfile record. > > In other words, your backspace only backspaces over the endfile record > (as per the standard). If you want to backspace over the record you > just wrote, you have to backspace twice. > > [Tim - does this mean I can close fortran/4885 ? Thanks] > > -- > Toon Moene - mailto:toon@moene.indiv.nluug.nl - phoneto: +31 346 214290 > Saturnushof 14, 3738 XG Maartensdijk, The Netherlands > Maintainer, GNU Fortran 77: http://gcc.gnu.org/onlinedocs/g77_news.html > Join GNU Fortran 95: http://g95.sourceforge.net/ (under construction)