1-- { dg-do compile }
2-- { dg-options "-gnatws" }
3
4package body pointer_variable_bounds is
5
6  function COMPONENT_DAT(BP : in BUNDLE_POINTER_TYPE; CP : in COMP_POINTER_TYPE) return HALF_INTEGER is
7    type CP_TYPE is access COMP_POINTER_TYPE;
8    type CD_TYPE is access HALF_INTEGER;
9    CD : CD_TYPE;
10  begin
11    return CD.all;
12  end;
13
14  procedure BUNDLE_DAT(BP : in BUNDLE_POINTER_TYPE) is
15    N0 : C_POINTER_TYPE := COMPONENT_DAT(BP, 4);
16  begin
17    null;
18  end;
19
20  procedure SEQUENCE_DAT(BP : in BUNDLE_POINTER_TYPE) is
21    N0 : C_POINTER_TYPE := COMPONENT_DAT(BP, 4);
22  begin
23    null;
24  end;
25
26end pointer_variable_bounds;
27