HPF directives are consistent with Fortran 90 syntax in the following sense: if any HPF directive were to be adopted as part of a future Fortran standard, the only change necessary to convert an HPF program would be to replace the directive-origin with blanks.
H201 hpf-directive-line is directive-origin hpf-directive H202 directive-origin is !HPF$ or CHPF$ or *HPF$ H203 hpf-directive is specification-directive or executable-directive H204 specification-directive is processors-directive os align-directive or distribute-directive or dynamic-directive or inherit-directive or template-directive or combined-directive or sequence-directive H205 executable-directive is realign-directive or redistribute-directive or independent-directive Constraint: An hpf-directive-line cannot be commentary following another statement on the same line. Constraint: A specification-directive may appear only where a declaration-construct may appear. Constraint: An executable-directive may appear only where an executable-construct may appear. Constraint: An hpf-directive-line follows the rules of either Fortran 90 free form (126.96.36.199) or fixed form (188.8.131.52) comment lines, depending on the source form of the surrounding Fortran 90 source form in that program unit. (3.3)An hpf-directive is case insensitive and conforms to the rules for blanks in free source form (3.3.1), even in an HPF program otherwise in fixed source form. However an HPF-conforming processor is not required to diagnose extra or missing blanks in an HPF directive. Note that, due to Fortran 90 rules, the directive-origin in free source form must be the characters !HPF$. HPF directives may be continued, in which case each continued line also begins with a directive-origin. No statements may be interspersed within a continued HPF-directive. HPF directive lines must not appear within a continued statement. HPF directive lines may include trailing commentary.
In either source form, the blanks in the adjacent keywords END FORALL and NO SEQUENCE are optional.
An example of an HPF directive continuation in free source form is:
!HPF$ ALIGN ANTIDISESTABLISHMENTARIANISM(I,J,K) & !HPF$WITH ORNITHORHYNCHUS_ANATINUS(J,K,I)
An example of an HPF directive continuation in fixed source form follows. Observe that column 6 must be blank, except when signifying continuation.
!HPF$ ALIGN ANTIDISESTABLISHMENTARIANISM(I,J,K) !HPF$*WITH ORNITHORHYNCHUS_ANATINUS(J,K,I)
This example shows an HPF directive continuation which is ``universal'' in that it can be treated as either fixed source form or free source form. Note that the ``&'' in the first line is in column 73.
!HPF$ ALIGN ANTIDISESTABLISHMENTARIANISM(I,J,K)& !HPF$&WITH ORNITHORHYNCHUS_ANATINUS(J,K,I)