iso_fortran_env

`iso_fortran_env`

is an intrinsic module that provides the following constants, derived types, and intrinsic procedures relating to the Fortran environment:

Fortran 2003, extended in Fortran 2008 and TS 18508

`atomic_int_kind`

- Default-kind integer constant to be used as kind parameter when defining integer variables used in atomic operations. (Fortran 2008 or later.)
`atomic_logical_kind`

- Default-kind integer constant to be used as kind parameter when defining logical variables used in atomic operations. (Fortran 2008 or later.)
`character_kinds`

- Default-kind integer constant array of rank one containing the supported kind parameters of the
`character`

type. (Fortran 2008 or later.) `character_storage_size`

- the size, in bits, of the character storage unit. (Fortran 2003 or later.)
`error_unit`

- the unit number used for error reporting (stderr). (Fortran 2003 or later.)
`file_storage_size`

- the size, in bits, of the file storage unit. (Fortran 2003 or later.)
`input_unit`

- the unit number used for input (stdin). (Fortran 2003 or later.)
`int8`

,`int16`

,`int32`

,`int64`

- Kind type parameters to specify an
`integer`

type with a storage size of 8, 16, 32, and 64 bits. It is negative if a target platform does not support the particular kind. (Fortran 2008 or later.) `integer_kinds`

- Default-kind integer constant array of rank one containing the supported kind parameters of the
`integer`

type. (Fortran 2008 or later.) `iostat_end`

- the value that is assigned to the
`iostat=`

specifier if an end-of-file condition occurs during a`read`

statement. (Fortran 2003 or later.) `iostat_eor`

- the value that is assigned to the
`iostat=`

specifier if an end-of-record condition occurs during a`read`

statement. (Fortran 2003 or later.) `iostat_inquire_internal_unit`

- Scalar default-integer constant, used by
`inquire`

for the`iostat=`

specifier to denote an that a unit number identifies an internal unit. (Fortran 2008 or later.) `numeric_storage_size`

- the size, in bits, of the numeric storage unit. (Fortran 2003 or later.)
`logical_kinds`

- Default-kind integer constant array of rank one containing the supported kind parameters of the
`logical`

type. (Fortran 2008 or later.) `output_unit`

- the unit number used for output (stdout). (Fortran 2003 or later.)
`real32`

,`real64`

,`real128`

- Kind type parameters to specify a REAL type with a storage size of 32, 64, and 128 bits. It is negative if a target platform does not support the particular kind. (Fortran 2008 or later.)
`real_kinds`

- Default-kind integer constant array of rank one containing the supported kind parameters of the
`real`

type. (Fortran 2008 or later.) `stat_locked`

- Scalar default-integer constant used as
`stat=`

return value by`lock`

to denote that the lock variable is locked by the executing image. (Fortran 2008 or later.) `stat_locked_other_image`

- Scalar default-integer constant used as
`stat=`

return value by`unlock`

to denote that the lock variable is locked by another image. (Fortran 2008 or later.) `stat_stopped_image`

- Positive, scalar default-integer constant used as
`stat=`

return value if the argument in the statement requires synchronisation with an image, which has initiated the termination of the execution. (Fortran 2008 or later.) `stat_failed_image`

- Positive, scalar default-integer constant used as
`stat=`

return value if the argument in the statement requires communication with an image, which has is in the failed state. (TS 18508 or later.) `stat_unlocked`

- Scalar default-integer constant used as
`stat=`

return value by`unlock`

to denote that the lock variable is unlocked. (Fortran 2008 or later.)

The module also provides the following derived type:

`lock-type`

- Derived type with private components to be use with the LOCK and UNLOCK statement. A variable of its type has to be always declared as coarray and may not appear in a variable-definition context. (Fortran 2008 or later.)

The module also provides the following intrinsic procedures: compiler_options and compiler_version.