BUG: F4605 HUGE to FAR Warning Incorrectly Generated (77301)



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 Q77301

SYMPTOMS

When a huge array is allocated and passed to a subroutine, the compiler generates the warning:
warning F4605: FAR formal argument 1 : passed HUGE array
This is despite a HUGE attribute on the formal argument of the subroutine.

RESOLUTION

The only way to suppress this warning is to compile with the /AH option or to use an interface statement (as commented out in the code below).

STATUS

Microsoft has confirmed this to be a problem in the products listed above.

This is not an issue in FORTRAN PowerStation, since the HUGE attribute is not supported.

MORE INFORMATION

The following code can be used to reproduce the problem:

Sample code

c      interface to subroutine suba(x,n)
c      real x[huge]
c      integer n
c      end


      real y[allocatable,huge] (:)

      n = 40000
      allocate(y(n),stat=ierror)

      call suba(y,n)
      end


      subroutine suba(x[huge],n)
      real x

      end
				

Modification Type:MajorLast Reviewed:12/1/2003
Keywords:kberrmsg kbLangFortran KB77301