2 -- { dg-options "-gnatws" }
4 package Discr_Private
is
7 type T_DECIMAL
(Prec
: Integer := 1) is private;
9 type T_DECIMAL
(Prec
: Integer := 1) is record
11 when 1 .. 2 => Value
: Integer;
17 type Value_T
is record
18 Bits
: Dec
.T_DECIMAL
(1);
20 for Value_T
'size use 88;
22 type Value_Entry_T
is record
27 type Value_Mode
is (QI
, HI
, SI
, DI
, XI
);
28 for Value_Mode
'size use 8;
30 type Valid_Modes_T
is array (Value_Mode
) of Boolean;
32 type Register_T
is record
33 Ventry
: Value_Entry_T
;
34 Vmodes
: Valid_Modes_T
;
37 type Regid_T
is (Latch
, Acc
);
38 for Regid_T
use (Latch
=> 0, Acc
=> 2);
39 for Regid_T
'Size use 8;
41 type Regarray_T
is array (Regid_T
) of Register_T
;
43 type Machine_T
(Up
: Boolean := True) is record
45 when True => Regs
: Regarray_T
;