| package OCONST3 is | |
| type bit is (zero, one); | |
| type u8 is mod 2**8; | |
| type Base is record | |
| i1 : Integer; | |
| end Record; | |
| type R is record | |
| u : u8; | |
| f : bit; | |
| b : Base; | |
| end record; | |
| for R use record | |
| u at 0 range 0 .. 7; | |
| f at 1 range 0 .. 0; | |
| b at 1 range 1 .. 32; -- unaligned SImode bitfield | |
| end record; | |
| My_R : constant R := (u=>1, f=>one, b=>(i1=>3)); | |
| procedure check (arg : R); | |
| end; |