HP 3000 Manuals

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