HP Fortran Programmer's Reference (September 2007)
Expressions and assignment
Expressions
Chapter 494
• Values of named constants. Any entity declared with the PARAMETER attribute must be
initialized with an initialization expression.
• Kind parameter in a type specification statement.
• The KIND dummy argument of a type conversion intrinsic function.
• Initial values in type declaration statements.
• Expressions in structure constructors in DATA statements.
• Case values in CASE statements.
• Subscript expressions or substring ranges in EQUIVALENCE statements.
The following entities may not be initialized:
• Dummy arguments
• Function results
• Allocatable arrays
• Pointers
• External names
• Intrinsic names
• Automatic objects
The following are examples of initialization expressions:
-456 ! an integer literal
(”Hello ”// ”World”) ! a character constant expression
pi * r ** 2 ! a constant numeric expression, where
! pi and r are named constants
ABS(i * j) ! reference to an elemental intrinsic,
! where i and j are named integer
! constants
SELECTED_REAL_KIND(7) ! reference to a transformational intrinsic
The following are illegal initialization expressions:
x ** 2.5 ! the power operand is not an integer
LOG(10.0) ! the intrinsic function is neither