28 lines
634 B
Ada
28 lines
634 B
Ada
package Derived_Type5_Pkg is
|
|
|
|
type T_Unsigned8 is new Natural range 0 .. (2 ** 8 - 1);
|
|
|
|
type Rec (Discriminant : T_Unsigned8) is record
|
|
Fixed_Field : T_Unsigned8;
|
|
case Discriminant is
|
|
when 0 =>
|
|
Optional_Field : T_unsigned8;
|
|
when others =>
|
|
null;
|
|
end case;
|
|
end record;
|
|
|
|
type Derived is new Rec (0);
|
|
|
|
for Derived use record
|
|
Fixed_Field at 0 range 0 .. 7;
|
|
Discriminant at 0 range 8 .. 15;
|
|
Optional_Field at 0 range 16 .. 23;
|
|
end record;
|
|
|
|
procedure Proc1 (R : in out Rec);
|
|
|
|
procedure Proc2 (R : out Rec);
|
|
|
|
end Derived_Type5_Pkg;
|