LF Fortran 95



The INTRINSIC statement permits a reference to a specific intrinsic function as an actual argument.


INTRINSIC [::] intrinsic-procedure-names

intrinsic-procedure-names is a comma-separated list of intrinsic procedures.


The appearance of a generic intrinsic function name in an INTRINSIC statement does not cause that name to lose its generic property.

If the specific name of an intrinsic function is used as an actual argument, the name must either appear in an INTRINSIC statement or be given the intrinsic attribute in a type declaration statement in the scoping unit.

Only one appearance of a name in all of the INTRINSIC statements in a scoping unit is permitted.

A name must not appear in both an EXTERNAL and an INTRINSIC statement in the same scoping unit.


program intrinsic real :: a=10. real,intrinsic :: log,log10 ! may be actual argument write(*,*) zee(a,log),zee(a,log10) ! writes 2.302585 1.0 end program function zee(a,func) real :: zee,a,func zee=func(a) end function