FIX: F1001, omf_ms.c, Structure Element I/O in Subroutine, 5.0

ID: Q48632


The information in this article applies to:
  • Microsoft FORTRAN for MS-DOS, version 5.0
  • Microsoft FORTRAN for OS/2, version 5.0


SYMPTOMS

The "F1001: omf_ms.c:1.118, line 1093" internal compiler error is most often created in FORTRAN 5.0 by passing a structure to a subroutine and trying to use an item in that structure in a READ or WRITE operation.


RESOLUTION/STATUS

An application note titled "F1.EXE and F1L.EXE Structure Patch," which corrects this problem, is available from Microsoft Product Support. This problem was also corrected in Microsoft FORTRAN version 5.1.

This file has been removed from the Software Library but can be requested by calling Microsoft Product Support Services.


MORE INFORMATION

Sample Code #1


c  The following code produces the above error in MS-DOS and produces
c  a protection violation under OS/2:

         subroutine a(ms)
         structure /dataset/ 
           integer*2 number
         end structure

         record /dataset/ ms

         read(*,10) ms.number
 10   format(i2)
         end 

Sample Code #2

Another way to alleviate this problem is to use a temporary structure, as in the following:

            subroutine a(ms)
         structure /dataset/ 
           integer*2 number
         end structure

         record /dataset/ ms,fs
         read(*,10) fs.number  ! Read into fs, which was not passed.
         ms=fs                 ! Assign temp struct. to passed struct.
 10      format(i2)
         end 

Additional query words: 5.00 5.10 hf0225

Keywords : kbcode kberrmsg kbLangFortran
Version : :5.0
Platform : MS-DOS OS/2
Issue type :


Last Reviewed: November 1, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.