FIX: F1001: omf_ms.c:1.118, line 2785; Common Block Too Large (67420)
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 Q67420 SYMPTOMS
When the data in a COMMON block exceeds 45,940,736 (44,864K) bytes,
the Microsoft FORTRAN version 5.0 compiler generates the following
error:
fatal error F1001: Internal Compiler Error
(compiler file '@(#)omf_ms.c:1.118', line 2785)
With Microsoft FORTRAN version 5.1, the followin error is produced:
fatal error F1001: Internal Compiler Error
(compiler file '@(#)omf_ms.c:1.119', line 2787)
RESOLUTION
Although using a slightly smaller amount of data allows compilation,
using this much data in a single module will violate other limitations
of the FORTRAN compiler and linker. For example, decreasing the size
of the INTEGER array in the above code sample allows compilation with
FORTRAN 5.0, but generates the following linker error:
fatal error L1047: too many group, segment, and class names in
one module
The only practical solution is to decrease the size of the arrays
significantly. The largest quantity of data that does not violate
the limits on the number of group, segment, and class names is
15,990,784 bytes, or 244 segments of 64K bytes per segment.
STATUS
Microsoft has confirmed this to be a problem in FORTRAN versions 5.0
and 5.1. This problem was corrected in FORTRAN PowerStation.
Modification Type: | Major | Last Reviewed: | 12/1/2003 |
---|
Keywords: | kbfix KB67420 |
---|
|