35 lines
628 B
Ada
35 lines
628 B
Ada
-- { dg-do run }
|
|
-- { dg-options "-gnatws -O" }
|
|
|
|
with System;
|
|
|
|
procedure SSO17 is
|
|
|
|
type My_Float is new Float range 0.0 .. 359.99;
|
|
|
|
type Rec is record
|
|
Az : My_Float;
|
|
El : My_Float;
|
|
end record;
|
|
for Rec'Bit_Order use System.High_Order_First;
|
|
for Rec'Scalar_Storage_Order use System.High_Order_First;
|
|
|
|
R : Rec;
|
|
|
|
procedure Is_True (B : Boolean);
|
|
pragma No_Inline (Is_True);
|
|
|
|
procedure Is_True (B : Boolean) is
|
|
begin
|
|
if not B then
|
|
raise Program_Error;
|
|
end if;
|
|
end;
|
|
|
|
begin
|
|
R := (Az => 1.1, El => 2.2);
|
|
Is_True (R.Az'Valid);
|
|
R := (Az => 3.3, El => 4.4);
|
|
Is_True (R.Az'Valid);
|
|
end;
|