# Named Constants in the ISO_FORTRAN_ENV Module

The ISO_FORTRAN_ENV intrinsic module provides the following named constants that you can use to get information on the Fortran environment. They are all scalars of type default integer.

Named Constant | Definition
--- | ---
ATOMIC_INT_KIND | Is the kind type parameter used when defining integer variables used in atomic operations.
ATOMIC_LOGICAL_KIND | Is the kind type parameter used when defining logical variables used in atomic operations.
CHARACTER_KINDS | Is the kind type parameter supported by the processor that is used when defining variables of type character. This is a default integer array constant. The rank of the array is one, its lower bound is one, and its size is the number of character kinds supported. In Intel® Fortran, its value is [1].
CHARACTER_STORAGE_SIZE | Is the size of the character storage unit expressed in bits.
CURRENT_TEAM | Identifies the current team of images when used as the LEVEL argument to the GET_TEAM intrinsic function.
ERROR_UNIT | Identifies the preconnected external unit used for error reporting.
FILE_STORAGE_SIZE | Is the size of the file storage unit expressed in bits. To use this constant, compiler option assume byterecl must be enabled.
INITIAL_TEAM | Identifies the initial team of images when used as the LEVEL argument to the GET_TEAM intrinsic function.
INPUT_UNIT | Identifies the preconnected external unit as the one specified by an asterisk in a READ statement. To use this constant, compiler option assume noold_unit_star must be enabled.
INT8 INT16 INT32 INT64 | Are the kind type parameters that specify an INTEGER type whose storage size is 8 bits, 16 bits, 32 bits, and 64 bits, respectively. If, for any of these constants, the processor supports more than one kind of that size, the kind value is determined by the processor. If the processor supports no kind of a particular size, that constant is equal to -2 if the processor supports a kind with larger size; otherwise, -1. In Intel Fortran, their respective values are 1, 2, 4, and 8.
INTEGER_KINDS | Is the kind type parameter supported by the processor that is used when defining variables of type integer. This is a default integer array constant. The rank of the array is one, its lower bound is one, and its size is the number of integer kinds supported. In Intel Fortran its value is [1, 2, 4, 8].
IOSTAT_END | Is the value assigned to the variable specified in an IOSTAT= specifier if an end-of-file condition occurs during execution of an input/output statement and no error condition occurs.
IOSTAT_EOR | Is the value assigned to the variable specified in an IOSTAT= specifier if an end-of-record condition occurs during execution of an input/output statement and no error condition occurs.
IOSTAT_INQUIRE_INTERNAL_UNIT | Is the value assigned to the variable specified in an IOSTAT= specifier in an INQUIRE statement if the unit number identifies an internal unit. This is a negative value, indicating an error condition.
LOGICAL_KINDS | Is the kind type parameter supported by the processor that is used when defining variables of type logical. This is a default integer array constant. The rank of the array is one, its lower bound is one, and its size is the number of logical kinds supported. In Intel® Fortran its value is [1, 2, 4, 8].
NUMERIC_STORAGE_SIZE | Is the size of the numeric storage unit expressed in bits.
OUTPUT_UNIT | Identifies the preconnected external unit as the one specified by an asterisk in a WRITE statement. To use this constant, compiler option assume noold_unit_star must be enabled.
PARENT_TEAM | Identifies the parent team of images when used as the LEVEL argument to the GET_TEAM intrinsic function.
REAL_KINDS | Is the kind type parameter supported by the processor that is used when defining variables of type real. This is a default integer array constant. The rank of the array is one, its lower bound is one, and its size is the number of real kinds supported. In Intel Fortran its value is [4, 8, 16].
REAL32 REAL64 REAL128 | Are the kind type parameters that specify a real type whose storage size is 32 bits, 64 bits, and 128 bits, respectively. If, for any of these constants, the processor supports more than one kind of that size, the kind value is determined by the processor. If the processor supports no kind of a particular size, that constant is equal to -2 if the processor supports kinds of a larger size; otherwise, -1. In Intel Fortran, their respective values are 4, 8, and 16.
STAT_FAILED_IMAGE | The value assigned to the variable specified in a STAT= specifier of an image control statement or coindexed object reference, or the STAT argument of a collective or atomic subroutine if an image involved in the execution of that statement, reference, or subroutine has failed.
STAT_LOCKED | The value assigned to the variable specified in a STAT= specifier of a LOCK statement if the lock variable is locked by the executing image.
STAT_LOCKED_OTHER_IMAGE | The value assigned to the variable specified in a STAT= specifier of an UNLOCK statement if the lock variable is locked by another image.
STAT_STOPPED_IMAGE | The value assigned to the variable specified in a STAT= specifier of a statement if execution of the statement requires synchronization with an image that has initiated normal termination (an image control statement). It is the value assigned to the STAT variable of a collective subroutine if the current team contains images that inititiated normal termination.
STAT_UNLOCKED | The value assigned to the variable specified in a STAT= specifier of an UNLOCK statement if the lock variable is unlocked.
STAT_UNLOCKED_FAILED_IMAGE | The value assigned to the STAT= specifier of a LOCK statement if the lock variable is unlocked because the image that locked it has failed.

Parent topic: ISO_FORTRAN_ENV Module