3 package Unchecked_Union2
is
5 type Small_Int
is range 0 .. 2**19 - 1;
7 type R1
(B
: Boolean := True) is record
9 when True => Data1
: Small_Int
;
10 when False => Data2
: Small_Int
;
15 Data1
at 0 range 0 .. 18;
16 Data2
at 0 range 0 .. 18;
20 pragma Unchecked_Union
(R1
);
27 Data
at 0 range 3 .. 26;