STANDARD_LEVEL [ HP Pascal/iX Reference Manual ] MPE/iX 5.0 Documentation
HP Pascal/iX Reference Manual
STANDARD_LEVEL
STANDARD_LEVEL is an HP Standard Option.
The STANDARD_LEVEL compiler option specifies the level of syntax that the
compiler routinely processes. The compiler issues a warning if it
encounters a language feature that is illegal at that level. The
compiler compiles the illegal feature if possible; otherwise, it is a
syntax error.
Syntax
{ANSI }
{ISO }
$STANDARD_LEVEL '{HP_PASCAL }'$
{HP_MODCAL }
{EXT_MODCAL}
Parameters
ANSI Allows only ANSI Pascal.
ISO Allows only ISO Pascal (and ANSI Pascal).
HP_PASCAL Allows only HP Pascal (and ISO Pascal).
HP_MODCAL Allows HP Pascal and some system programming extensions.
EXT_MODCAL Allows HP Pascal and all system programming extensions.
Default HP_PASCAL.
Location Anywhere.
The HP Standard specifies the STANDARD_LEVEL compiler option only with
the standard levels ANSI, ISO, and HP_PASCAL. HP Pascal accepts the
additional standard levels HP_MODCAL and EXT_MODCAL.
A standard level violation (use of a language feature that is not
available at the current standard level) causes the compiler to issue a
warning, except if the violation involves a reserved word, in which case
it is an error.
NOTE The STANDARD_LEVEL compiler option also accepts the Pascal/V
standard levels 'HP' and 'HP3000', which it treats like
'HP_PASCAL'.
Example
$STANDARD_LEVEL 'ANSI'$ {equivalent to $ANSI ON$}
$OS 'MPE'$
PROGRAM show_level (output);
PROCEDURE proc1;
VAR
i : integer;
b : Boolean;
BEGIN
assert(b,i);
^
**** WARNING #1 THIS FEATURE REQUIRES $STANDARD_LEVEL 'HP_PASCAL'$ (539)
i := 0;
b := true;
END;
BEGIN
END.
Figure 12-4 illustrates the relationship between the STANDARD_LEVEL
parameters.
Figure 12-4. Relationships Between STANDARD_LEVEL Compiler Option Parameters
MPE/iX 5.0 Documentation