Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

What is IMPLICIT UNDEFINED?

avinashs
New Contributor I
264 Views

I am reviewing some legacy Fortran code implementing a numerical algorithm and it contains the statement IMPLICIT UNDEFINED (A-H,O-Z). I have never come across such a statement before. Is it the same as IMPLICIT NONE? It should be fairly easy to comment out or replace.

0 Kudos
1 Solution
mecej4
Black Belt
264 Views

It is an old Sun Fortran extension. You can replace it by IMPLICIT NONE and move on.

View solution in original post

6 Replies
mecej4
Black Belt
265 Views

It is an old Sun Fortran extension. You can replace it by IMPLICIT NONE and move on.

FortranFan
Honored Contributor II
264 Views
GVautier
New Contributor II
264 Views

Take care that

IMPLICIT UNDEFINED (A-H,O-Z)

will leave I-N implicitly defined

IMPLICIT NONE

will undefine all variables.

For me, if it is legal :

IMPLICIT NONE

IMPLICIT INTEGER (I-N)

will only be equivalent to

IMPLICIT UNDEFINED (A-H,O-Z)

Steve_Lionel
Black Belt Retired Employee
264 Views

It is legal to have multiple IMPLICIT statements as long as there is only one IMPLICIT NONE.

JAlexiou
New Contributor I
264 Views

The two statements are not equivalent. One defines I,J,K,L,M and N as INTEGER while the other doesn't.

mecej4 wrote:

It is an old Sun Fortran extension. You can replace it by IMPLICIT NONE and move on.

GVautier
New Contributor II
264 Views

Hi

I presumed that if the IMPLICIT UNDEFINED (A-H,O-Z) statement was used in this code it was because the compiler used to compile it always define implicit types (A-H,O-Z) as real and (I-N) as integer as old compilers used to. So the aim of this statement was to keep integer variables defined.

Otherwise, the IMPLICIT NONE statement would have been used.

Reply