I have a relatively stable, relatively large fortran program (500,000+ lines).
This program
works correctly on linux, 64 bit linux, solaris, and windows when compiled with
g77 3.4.4.

When I complile it with gfortran 4.1.0, 26 out of 384 of my regerssion tests
fail because of i/o
errors. Basically, I have databases which are accesses via direct access,
unformatted io.
All transactions pass through two routines: a writter and a reader. I have
attached a tar file
which contains the two routines. Basically, they write two words at the
beginning of each
record - the current numbers of "saus" (sort integers) and the record which
continues this
record. Also attached is a file, trans, which shows the reads and writes. Each
line in the
file contains the action (dba_read or dba_write), the fortran unit number, the
record 
number, the number of short integers on this record, the continuation record,
and finally
the record length. (The print statements that created this file are commentd
out in the
source).

If you notice the last line in this file says that record 2958 on logical unit
15 has 1 short integer,
but 4 lines up, it has 122 and is continued on 2959. Notice that there have
been writes
to this file, but at different record numbers.

I would really like to give you a better report, but the fact that 350 tests
work properly says
that any attempt to create a simple test will probably fail (the code will work
properly).
I will be happy to do anything you would like to help in the resolution of this
problem. In
particular, it you would like for me to test any changes, please just send me
the library
and I can get back to you within a couple of hours.


-- 
           Summary: Problems with direct access io
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: blocker
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: ray at ultramarine dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27757

Reply via email to