portable Datentypen

früher:

DOUBLE PRECISION  X         ! ok, immer noch erlaubt
REAL*8            Y         ! war noch nie Standard
X = 1.0D0

besser:

REAL(KIND=2)   :: X         ! Typ ist compiler-abhaengig    
X = 1.0_2

oder ganz portabel:

INTEGER, PARAMETER :: long &       ! long etc. in einem Modul sammeln
    = SELECTED_REAL_KIND(12, 200)  ! <0, falls kein Typ passt
REAL(KIND=long)  :: X
X = 1.0_long