blob: 850022766fc331110341eac78372f51b5242ee8d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
package body Opt13_Pkg is
subtype Index_Type is Natural range 0 .. 16;
type Arr is array (Index_Type range <>) of Integer;
type Rec is record
F1, F2, F3 : Float;
N : Natural;
B1, B2 : Boolean;
F4 : Float;
end record;
type Data (D : Index_Type) is record
A : Arr (1 .. D);
R : Rec;
end record;
Zero : constant Rec := (0.0, 0.0, 0.0, 0, False, False, 0.0);
procedure Allocate (T : out My_Type) is
begin
T := new Data (Index_Type'last);
T.R := Zero;
for I in 1 .. T.A'last loop
N := 1;
end loop;
end;
end Opt13_Pkg;
|