BUG: F1001: omf.c:1.60 Line 185; /Gt and FORMAT Specifiers (69802)



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.0
  • Microsoft FORTRAN compiler for OS/2 5.1

This article was previously published under Q69802

SYMPTOMS

Using Microsoft FORTRAN version 5.0 or 5.1 to compile a program with the /Gt compiler option can result in the following error:
fatal error F1001: Internal Compiler Error
(compiler file '@(#)omf.c:1.60', line 185)
This specific problem involving the /Gt compiler option has been encountered only in code that contains FORMAT statements and array declarations. Using a smaller or larger data threshold value, slightly modifying a format statement, or changing an array bound will suppress the error.

NOTE: The /Gt option is not supported in FORTRAN PowerStation, so this is not a problem in FORTRAN PowerStation.

STATUS

Microsoft has confirmed this to be a problem in FORTRAN versions 5.0 and 5.1.

MORE INFORMATION

The following sample program illustrates the problem:
       integer ii(380), jj(381,42)
       read(*,'(1x,1i1)') ii(1)
       end
				
Compiling this program with /Gt1520 will generate the error. However, compiling with a data threshold value less than 3 (for example, /Gt2) or greater than 1520 (for example, /Gt1521) suppresses the error.

Changing the bound of array ii or modifying the format of the read statement also suppresses error, as illustrated below:
       integer ii(381), jj(381,42)   ! Change bound of array ii.
       read(*,'(1x,i1)') ii(1)       ! Modify inline FORMAT statement.
       end
				
This is one of the simpler code samples that exhibits this error. The particular /Gt value that causes the problem is different for other programs that result in this error.

Modification Type:MajorLast Reviewed:12/1/2003
Keywords:KB69802