summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/bit_packed_array.ads
blob: 525536ee646026592b58e368f1f1d3e288c49278 (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
32
33
with Interfaces;

package Bit_Packed_Array is

   type laser_illuminator_code_group_t is (zero, one);
   pragma Convention (C, laser_illuminator_code_group_t);

   subtype lic_array_index_t is Interfaces.Unsigned_8 range 0 .. 3;

   type lic_array_t is array (lic_array_index_t) of laser_illuminator_code_group_t;
   pragma Convention (C, lic_array_t);

   type Eighty_Bytes_T is array (1 .. 80) of Interfaces.Unsigned_8;

   type Mission_Assignment_T is record
      Eighty_Bytes           : Eighty_Bytes_T;
      Laser_Illuminator_Code : lic_array_t;
   end record;

   for Mission_Assignment_T use record
      Eighty_Bytes           at 0 range   0 .. 639;
      Laser_Illuminator_Code at 0 range 653 .. 780;
   end record;

   type Mission_Assignment_Dbase_Rec_T is record
      ISF : Mission_Assignment_T;
   end record;

   MADR : Mission_Assignment_Dbase_Rec_T;

   procedure Generate_Callforward;

end Bit_Packed_Array;