6.2.1 C*$* assert [no]argument aliasing

The C*$* assert no argument aliasing assertion allows KAP to make assumptions about subprogram arguments in a program. According to the Fortran 77 standard, multiple-aliasing of variables is allowed only if no aliases are modified. In the following code example, the subroutine violates the standard, since variable A is multiple-aliased in the subroutine through C and D , and variable X is multiple-aliased through X and E :

COMMON X,Y
REAL A,B
CALL SUB ( A, A, X )

...
SUBROUTINE SUB ( C, D, E )
COMMON X, Y

X = ...
C = ...
...

If multiple-aliasing is used in a program, the C*$* assert argument aliasing assertion should be used. The command qualifier /assume=a acts like a global C*$* assert argument aliasing assertion. An argument aliasing assertion is active until reset, or until the end of the program unit.


Previous Page | Next Page | Contents | Index |
Command-Line Qualifiers