VMS Help  —  PASCAL  Attributes  Allocation
  Allocation attributes indicate the  form  of  storage  that  the
  object should occupy.

1  –  AUTOMATIC

  The AUTOMATIC attribute specifies that storage for the  variable
  be  allocated  each time the program enters the routine in which
  the variable is declared.  The storage is deallocated each  time
  the  program  exits  from  that  routine.  An automatic variable
  exists as long as the declaring routine remains active.

  See the "HP Pascal Language Reference Manual" for  the  complete
  description of using the AUTOMATIC attribute.

2  –  AT

  The AT attribute specifies that VSI Pascal allocates no  storage
  for  the object (storage has already been allocated) and that it
  resides at the exact, specfied address.

  Syntax:

     AT( n )

  The exact address is specified by  the  constant  expression  n.
  Variables representing machine-dependent entities are frequently
  given the AT attribute.

  See the "HP Pascal Language Reference Manual" for  the  complete
  description of using the AT attribute.

3  –  COMMON

  The COMMON attribute specifies that storage for  a  variable  be
  allocated in an overlaid program section called a common block.

  Syntax:

     COMMON [[(identifier)]]

  The 'identifier' indicates the name of the common block.  It  is
  passed  in  uppercase  on  OpenVMS  systems.   If  you  omit the
  identifier, the name of the variable is used as the name of  the
  common block.

  This attribute allows you  to  share  variables  with  other  HP
  languages, such as FORTRAN.

  See the "HP Pascal Language Reference Manual" for  the  complete
  description of using the COMMON attribute.

4  –  PSECT

  The PSECT attribute is useful for placing static  variables  and
  executable  blocks in program sections that will be shared among
  executable images.

  Syntax:

     [PSECT(identifier)]

  The 'identifier' designates the program section in which storage
  for  a variable, routine, or compilation is to be allocated.  It
  is passed in uppercase on OpenVMS  systems.   If  you  omit  the
  identifier,  the name of the variable is used as the name of the
  common block.  The identifier designates the compilation unit in
  which storage for a variable is to be allocated.

5  –  STATIC

  The STATIC attribute  causes  VSI  Pascal  to  create  a  static
  object, which is allocated only once and which exists as long as
  the executable image in which it is allocated remains active.

  See the "HP Pascal Language Reference Manual" for  the  complete
  description of using the STATIC attribute.
Close Help