Microsoft KB Archive/39068

= PRB: Error F2112 Caused by COMPLEX Number Variable =

Article ID: 39068

Article Last Modified on 12/1/2003

-

APPLIES TO


 * Microsoft FORTRAN Compiler 4.01
 * Microsoft FORTRAN Compiler 4.1
 * Microsoft FORTRAN Compiler 5.0
 * Microsoft FORTRAN Compiler 5.1
 * Microsoft FORTRAN Compiler 4.1
 * Microsoft FORTRAN Compiler 5.0
 * Microsoft FORTRAN Compiler 5.1
 * Microsoft FORTRAN PowerStation 1.0 Standard Edition
 * Microsoft Fortran PowerStation 1.0a for MS-DOS
 * Microsoft FORTRAN PowerStation 32
 * Microsoft FORTRAN PowerStation 32

-



This article was previously published under Q39068



SYMPTOMS
An attempt to compile an application developed in Microsoft FORTRAN fails with the following error message:

Error F2112 : I : not symbolic constant.

With Microsoft FORTRAN PowerStation 32, version 4.0, this generates:

error FOR3083: invalid real part of COMPLEX constant



CAUSE
A FORTRAN application cannot directly manipulate complex number variables.



RESOLUTION
Use the CMPLX intrinsic function to manipulate the variable, as follows: Z = CMPLX(I, 1.2)



MORE INFORMATION
On Page 24, the Microsoft FORTRAN &quot;Language Reference and Mixed-Language Programmer's Guide&quot; for version 4.1 describes the complex data types as follows: The COMPLEX or COMPLEX*8 data type is an ordered pair of single- precision real numbers. COMPLEX*16 data type is an ordered pair of  double-precision real numbers. The first number in the pair represents the real part of a complex number, and the second number represents the imaginary part. For example, the complex number (7, 3.2) represents the number 7.0+3.2i.

The following code example demonstrates this error message.

Sample Code
C Compiler options required: None COMPLEX*8 Z     REAL*4 I      Z = (I, 1.2) END

Additional query words: 1.00 4.00 4.01 4.10 5.00 5.10

Keywords: kberrmsg kblangfortran KB39068

-

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

© Microsoft Corporation. All rights reserved.