INTRINSIC

目的

INTRINSIC 属性は、名前を組み込みプロシージャーとして識別し、 組み込みプロシージャーの特定名を実引き数として使用できるようにします。

構文



>>-INTRINSIC--+-----+--name_list-------------------------------><
              '- ::-'
 
 

name
組み込みプロシージャーの名前です。

規則

ある有効範囲単位内で組み込みプロシージャーの特定名を実引き数として使用する場合、その特定名は INTRINSIC 属性を持たなければなりません。 総称名に INTRINSIC 属性を持たせることはできますが、 総称名が特定名でないかぎり、引き数として渡すことはできません。

INTRINSIC 属性を持つ総称プロシージャーまたは特定プロシージャーは、 それぞれの特性を保持します。

INTRINSIC 属性を持つ総称組み込みプロシージャーが、 同時に総称インターフェース・ブロックの名前でもある場合があります。 総称インターフェース・ブロックは総称組み込みプロシージャーに対する 拡張機能を定義します。

INTRINSIC 属性と互換性のある属性




PROGRAM MAIN
  INTRINSIC SIN, ABS
  INTERFACE ABS
    LOGICAL FUNCTION MYABS(ARG)
      LOGICAL ARG
    END FUNCTION
  END INTERFACE
  LOGICAL LANS,LVAR
  REAL(8) DANS,DVAR
  DANS = ABS(DVAR)            ! Calls the DABS intrinsic procedure
  LANS = ABS(LVAR)            ! Calls the MYABS external procedure
 
! Pass intrinsic procedure name to subroutine
  CALL DOIT(0.5,SIN,X)        ! Passes the SIN specific intrinsic
END PROGRAM
 
SUBROUTINE DOIT(RIN,OPER,RESULT)
  INTRINSIC :: MATMUL
  INTRINSIC    COS
  RESULT = OPER(RIN)
END SUBROUTINE

関連情報

IBM Copyright 2003