PAR__ABORT is returned if a user enters !! in response to a prompt. In this event you should ensure that your application exits immediately. In practice this means that a) the user is not be prompted for any further parameters, though you do not have to check for an abort status after every PAR_GET call - the inherited status will look after that - and b) the application exits cleanly, freeing any resources used. There must be a status check before any of the parameter values are used, in case they have not been obtained successfully.
For example
INCLUDE 'PAR_ERR' ! PAR error constants
: : :
CALL PAR_GET0I( 'STEP', NSTEP, STATUS )
CALL PAR_GET1R( 'HEIGHTS', 50, HEITS, NUMHTS, STATUS )
CALL PAR_GET0L( 'COLOUR', COLOUR, STATUS )
IF ( STATUS .EQ. PAR__ABORT ) THEN
< perform any tidying operations >
GOTO 999
END IF
< perform calculations >
999 CONTINUE
END
performs three parameter get calls, before testing for an
abort; if an abort status is found, the routine exits. The status check
against PAR__ABORT is unusual, and it is included to illustrate the
symbolic constant. In normal circumstances you would test whether
STATUS and SAI__OK were not equal, since it checks whether any error
has occurred.
PAR Interface to the ADAM Parameter System