HP Fortran Programmer's Reference (September 2007)

HP Fortran statements
LOGICAL
Chapter 10396
is a comma-separated list of dimension bounds
initialization-expr
is a logical constant expression. If
initialization-expr
is present,
entity-list
must be preceded by the double colon.
Description
The LOGICAL statement is constrained by the rules for type declaration statements, including
the requirement that it precede all executable statements.
As a portability extension, HP Fortran allows the following syntax for specifying the length of
an entity:
name
[*
len
] [(
array-spec
)] [=
initialization-expr
]
If (
array-spec
) is specified, *
len
may appear on either side of (
array-spec
). If
name
appears with *
len
, it overrides the length specified by LOGICAL*
size
.
Examples
The following are valid declarations:
LOGICAL log1, log2
LOGICAL(KIND=2) :: log3
LOGICAL(2), PARAMETER :: test=.TRUE.
! initialize an array, using an array constructor
LOGICAL, DIMENSION(2) :: lvec=(/.TRUE.,.FALSE./)
! use the slash notation (an HP extension) to initialize
LOGICAL log1/.TRUE./, log2/.FALSE./ ! note, no double colon
! the following declarations are equivalent; the second uses the
! HP length specification extension
LOGICAL (KIND = 8) log8
LOGICAL*4 log8*8
Related statements
INTEGER
Related concepts
For related information, see the following:
“Type declaration for intrinsic types” on page 109
“Implicit typing” on page 113
Array declarations” on page 59