Initialization Expressions

An initialization expression must evaluate at compile time to a constant. It is used to specify an initial value for an entity.

In an initialization expression, each operation is intrinsic and each operand is one of the following:

Each subscript, section subscript, and substring starting and ending point must be an initialization expression.

In an initialization expression, the exponential operator (**) must have a power of type integer.

If an initialization expression invokes an inquiry function for a type parameter or an array bound of an object, the type parameter or array bound must be specified in a prior specification statement (or to the left of the inquiry function in the same statement).


The following examples show valid and invalid initialization (constant) expressions:

-1 + 3    
SIZE(B)   ! B is a named constant 
INT(J, 4)   ! J is a named constant 
Invalid  Explanation 
SUM(A)   Not an allowed function. 
A/4.1 - K**1.2   Exponential does not have integer power (A and K are named constants). 
HUGE(4.0)   Argument is not an integer. 

For More Information:

Previous Page Next Page Table of Contents