
  {DECK: CYDIMDP}

  {FUNCTION: TYPE DEFINITIONS FOR IPL VERSIONS OF MACHINE DEPENDENT}
  { TYPE.}

  {ENVIRONMENT: None.}


  CONST
    word_size = 64 {BITS} ,
    halfword_size = 32 {BITS} ,
    parcel_size = 16 {BITS} ,
    byte_size = 8 {BITS} ,
    bit_size = 1 {BIT} ,
    short_constant_minimum = - 32768, { - 2**15 }
    short_constant_maximum = 32767, { 2**15 - 1 }
    machine_addr_maximum = 7fffffff(16), { 2**31 - 1 }
    max_segment_length = machine_addr_maximum + 1,

    {the next 2 constants define the range within which the constant}
    { part of a computed result should fall to ensure that overflow does}
    { not occur}
    constant_part_hi_value = 1000000(16),
    constant_part_lo_value = - 1000000(16);

  TYPE
    iinteger = - 7fffffff(16) .. 7fffffff(16), { IPL 32-BIT INTEGER }
    int_33_bits = - 0ffffffff(16) .. 0ffffffff(16),
    machine_addr_type = 0 .. machine_addr_maximum, { 31 BITS }
    machine_addr_in_bits_type = 0 .. machine_addr_maximum * byte_size,
    segment_length_type = 0 .. max_segment_length,
    short_constant = short_constant_minimum .. short_constant_maximum,
    integer_range = - 0ffffffffffff(16) .. 0ffffffffffff(16),
    base_type = (null_base, static_base, constant_base, stack_frame_base,
      parm_list_base, xref_base, register_base),
    pseudo_reg_type = 0 .. 0ffff(16),
    computed_result_type = packed record
      computed_part: pseudo_reg_type,
      constant_part: int_33_bits,
    recend,
    array_element_length_type = machine_addr_type,
    record_vsa_offset_type = machine_addr_in_bits_type;

  ?? SKIP := 5 ??

