FIX: /Zi and INTERFACE and CHARACTER*(*) Halts Compiler (84330)
The information in this article applies to:
- Microsoft FORTRAN Compiler for MS-DOS 5.0
- Microsoft FORTRAN Compiler for MS-DOS 5.1
- Microsoft FORTRAN compiler for OS/2 5.1
This article was previously published under Q84330 SYMPTOMS
Using the Microsoft FORTRAN compiler version 5.0 or 5.1 with the /Zi option
to compile code that has an INTERFACE statement and the character
declaration CHARACTER*(*) may cause the machine to hang under MS-DOS when
compiling. Compiling the same program with /Zi under OS/2 may cause a Trap
D protection violation to be generated.
CAUSE
This problem occurs when the CHARACTER*(*) declaration is used within the
INTERFACE statement, which is very similar to other reported problems
compiling code containing INTERFACE statements with the /Zi option. For
more information, please see the following article in the Microsoft
Knowledge Base:
77258 Compiler Hang with /Zi or /Od, INTERFACE Statement
RESOLUTION
Change the specification CHARACTER*(*) to CHARACTER*1 in INTERFACE
statements. The size of the character string in the INTERFACE statement is
not used by the compiler so any dummy value can be used.
STATUS
Microsoft has confirmed this to be a problem in Microsoft FORTRAN versions
5.0 and 5.1 for MS-DOS and OS/2. This problem was corrected in FORTRAN
PowerStation, version 1.0.
Modification Type: | Major | Last Reviewed: | 10/23/2003 |
---|
Keywords: | kbfix KB84330 |
---|
|