Copyright Digital Equipment Corp. All rights reserved.

/USAGE[=(option[,...])] D=platform-specific

                                  D=/USAGE=(EMPTY,PACKED,UNSUP,UNINIT) (OpenVMS VAX)
                                  D=/USAGE=(EMPTY,PACKED,UNSUP,UNINIT,VOLATILE) (OpenVMS Alpha)
                                  D=/USAGE=(EMPTY,PACKED,UNSUP,UNINIT,VOLATILE) (OpenVMS I64)
 /NOUSAGE

 Directs the compiler to perform compile-time checks indicated by
 the   chosen   options.   A  single  identifier  or  a  list  of
 identifiers enclosed in parentheses  may  follow  /USAGE;  these
 identifiers  are  options that tell the compiler which checks to
 perform.  The options are as follows:

    ALL                 
      Enables checking of all options.

    NONE                
      Disables all /USAGE options.

    [NO]EMPTY_RECORDS   
      Checks for fetching records with no fields. Such fields are
      usually created by the %DICTIONARY directive for unsupported data
      types.

    [NO]NONGRNACC  
      Detects  code for which the compiler cannot generate requested
      granularity.

    [NO]PACKED_ACTUALS  
      Checks for passing components of packed structures to VAR
      parameters.

    [NO]PERFORMANCE     
      Checks for declarations and uses that will result in less than
      optimal performance.

    [NO]UNCERTAIN       
      Checks for variables that may be uninitialized depending on
      program flow.

    [NO]UNINITIALIZED   
      Checks for variables that are known to be uninitialized.

    [NO]UNSUPPORTED_CDD 
      Checks for usage of CDD/Repository constructs that do not
      correspond to VSI Pascal data types.

    [NO]UNUSED          
      Checks for variables that are declared but never referenced.

    [NO]UNCALLABLE          
      Checks for routines that are declared but never referenced.
      (OpenVMS Alpha and OpenVMS I64 only)

    [NO]VOLATILE        
      Checks for accesses to volatile data that cannot be protected as
      atomic operations. (OpenVMS Alpha and OpenVMS I64 only)


 See the "HP Pascal Language  Reference  Supplement  for  OpenVMS
 Systems"  for  a  list  of  the  types of variables that are not
 checked for uninitialization.

 By  default  on  OpenVMS  VAX  systems,   /USAGE=(EMPTY_RECORDS,
 PACKED_ACTUALS,  UNSUPPORTED_CDD, UNINITIALIZED) is enabled.  By
 default   on   OpenVMS   Alpha   and   OpenVMS   I64    systems,
 /USAGE=(EMPTY_RECORDS,         NONGRNACC,        PACKED_ACTUALS,
 UNSUPPORTED_CDD, UNINITIALIZED, VOLATILE)  is  enabled.   /USAGE
 without  options  is  equivalent  to  /USAGE =ALL.  The negation
 /NOUSAGE is equivalent to /USAGE=NONE.