Diagnostic 7617: This host associated object appears in a 'defining' context in a PURE procedure or in an internal procedure contained in a PURE procedure.
In Fortran, A PURE procedure has restrictions on side-effects that allow parallelization and better optimization. PURE procedures are not allowed to define or change the definition status of variables that are host or use associated, or in COMMON. In the following example,
hostvar is host associated inside PURE subroutine
puresub. When this source is compiled, the assignment to
hostvar causes error 7617 to be reported.
program F7617 implicit none integer hostvar call puresub contains pure subroutine puresub hostvar = 1 end subroutine puresub end program F7617
Note that ELEMENTAL procedures are also PURE, unless they are also given the IMPURE prefix (a Fortran 2008 feature supported by Intel Fortran Compiler 16.0 and above.)
To resolve this error, do not use host associated variables in a definition context within a PURE procedure.
If you have further questions about this diagnostic, please ask in the Intel Fortran User Forums.