| package Corr_Discr is | |
| type Base (T1 : Boolean := True; T2 : Boolean := False) | |
| is null record; | |
| for Base use record | |
| T1 at 0 range 0 .. 0; | |
| T2 at 0 range 1 .. 1; | |
| end record; | |
| type Deriv (D : Boolean := False) is new Base (T1 => True, T2 => D); | |
| end Corr_Discr; | |