Download HP Pascal for OpenVMS Language Reference Manual

Transcript
When comparing a 32-bit and a 64-bit pointer, the 32-bit pointer will be signextended before the comparison. Also, when assigning a 32-bit pointer value
into a 64-bit pointer variable, the value will be sign-extended. You cannot
assign a 64-bit pointer value into a 32-bit pointer variable.
For More Information:
•
On the NEW procedure (Section 8.60)
•
On the DISPOSE procedure (Section 8.28)
•
On records (Section 2.4.2)
•
On pointers to schema types (Section 2.5)
•
On linked lists (HP Pascal for OpenVMS User Manual)
•
On compiler switches for selecting alignment, packing, and allocation rules
for each platform (HP Pascal for OpenVMS User Manual)
2.3.1 POINTER Type
The POINTER predefined type is compatible with all pointer types. Variables
or functions of type POINTER cannot be dereferenced or used with the NEW
and DISPOSE procedures. In order to access the data, you must assign the
pointer value into a variable of a particular pointer type or typecast the pointer
to a particular pointer type. For example, you can use the POINTER type in
the following ways:
•
•
To assign to or from any other type of pointer, including function result
variables
To compare equality with any other type of pointer
•
To pass actual parameters of type POINTER to VAR and value parameters
of any other type of pointer
•
To accept parameters of any other type of pointer with formal parameters
of type POINTER
2.4 Structured Types
The structured data types are user defined and consist of components. Each
component of a structured data type has its own data type; components can be
any type.
2–18 Data Types and Values