Knowledge Base

BUG: FOR2206 Error Illegal Access of Module Member

PSS ID Number: 148183

Article Last Modified on 11/2/1999


The information in this article applies to:


This article was previously published under Q148183

SYMPTOMS

The USE statement's ONLY option allows access to those module members specified in the only-list. Attempting to gain access to a module's member not specified in the USE statement's ONLY option only-list results in a compilation error similar to the following:
error FOR2206: inconsistent data type for FUNCTION <function-name> from procedure <module-name> and procedure <procedure-name>

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

MORE INFORMATION

In the following sample code, both the SETWRITEMODE() function and the $GPSET constant are defined in the MSFLIB module although the $GPSET constant is the only module member specified as accessible to the program unit. When compiling, the sample code the compiler erroneously attempts to gain access to the definition of the SETWRITEMODE() function resulting in the FOR2206 compiler error.

Sample Code

C Compile options needed: none

      use msflib, only: $GPSET
      i = SETWRITEMODE( $GPSET )
      end
				

Additional query words: 4.00

Keywords: kbLangFortran KB148183
Technology: kbAudDeveloper kbFORTRANPower400NT kbFortranSearch kbZNotKeyword8