Microsoft KB Archive/69511

= FIX: F1001: omf_ms.c:1.118; Equivalence with Structure Element =

Article ID: 69511

Article Last Modified on 10/23/2003

-

APPLIES TO


 * Microsoft FORTRAN Compiler 5.0
 * Microsoft FORTRAN Compiler 5.0

-



This article was previously published under Q69511



SYMPTOMS
Using Microsoft FORTRAN 5.0 (under MS-DOS) to compile a program that uses an element of a structure in a READ or WRITE statement after that structure is used in an EQUIVALENCE statement, can result in the following error:

fatal error F1001: Internal Compiler Error

(compiler file '@(#)omf_ms.c:1.118', line 1093)

When compiling under OS/2, a protection violation is generated by the third pass of the compiler.



CAUSE
The errors do not occur if the element of the structure is assigned to a temporary variable, and then this temporary variable is used in the READ or WRITE.



RESOLUTION
An application note titled &quot;FORTRAN 5.0 F1.EXE and F1L.EXE Structure Patch&quot; is available to correct these errors. To obtain this application note, call Microsoft Product Support Services.

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



STATUS
Microsoft has confirmed this to be a problem in FORTRAN version 5.0. This problem was corrected in FORTRAN version 5.1.



Sample Code #1
c The following program illustrates the problem:

structure /a/ character*1 x     end structure

record /a/ test character*1 word equivalence (word,test) word = 'a'     write(*,*) test.x      end

Sample Code #2
Assigning the structure element to a temporary variable, as shown c below, and then using the temporary variable in the WRITE statement, c does not generate the errors.

structure /a/ character*1 x     end structure

record /a/ test character*1 word, tmp equivalence (word,test) word = 'a'     tmp = test.x      write(*,*) tmp end If the /Zi compiler option is used to compile the program above, a protection violation will result when compiling under OS/2. The compiler will hang when run under MS-DOS. For more information, query on the following:

/Zi and EQUIVALENCEing and RECORD and variables and hangs and machine

Additional query words: 5.00 5.10 hf0225

Keywords: kbfix KB69511

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.