BUG: F1001 Error or Run-time Hang with /NDdatasegment Option (50402)



The information in this article applies to:

  • Microsoft FORTRAN Compiler for MS-DOS 4.0
  • Microsoft FORTRAN Compiler for MS-DOS 4.01
  • Microsoft FORTRAN Compiler for MS-DOS 4.1
  • Microsoft FORTRAN Compiler for MS-DOS 5.0
  • Microsoft FORTRAN Compiler for MS-DOS 5.1
  • Microsoft FORTRAN compiler for OS/2 4.1
  • Microsoft FORTRAN compiler for OS/2 5.0
  • Microsoft FORTRAN compiler for OS/2 5.1

This article was previously published under Q50402

SYMPTOMS

An application compiled with Microsoft FORTRAN version 5.0 or 5.1 hangs and stops responding.

An attempt to build the same application with Microsoft FORTRAN versions 4.0, 4.01, or 4.1 fails and the compiler generates one of the following messages. For version 4.1:
fatal error F1001: Internal Compiler Error
(compiler file '@(#)MDmisc.c:1.78', line 883)
For version 4.01:
fatal error F1001: Internal Compiler Error
(compiler file '@(#)MDmisc.c:1.77', line 876)
For version 4.0:
fatal error F1001: Internal Compiler Error
(compiler file '@(#)MDmisc.c:1.70', line 828)

CAUSE

The application uses the /NDdatasegment option to name its data segment, assigns a value to a two-byte integer, and writes the value to the screen.

RESOLUTION

To avoid this problem, perform one of the following two steps:

  • Modify the source code to remove the WRITE statement. -or-

  • Modify the compiler command line to remove the /NDdatasegment option.

STATUS

Microsoft has confirmed this to be a problem in FORTRAN versions 4.0, 4.01, 4.1, 5.0, and 5.1 for MS-DOS and versions 4.1, 5.0, and 5.1 for OS/2.

This is not a problem in FORTRAN PowerStation, which does not support the /ND option.

MORE INFORMATION

The following code example demonstrates the errors listed above. When a module does not perform any I/O operations, no errors occur and the application runs correctly.

Sample Code

C Compile options needed: /NDdatasegment

      INTEGER*2 N
      N = 1
      WRITE (*, *) N
      END
				

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