29 lines
468 B
Ada
29 lines
468 B
Ada
-- { dg-do run }
|
|
|
|
procedure Addr11 is
|
|
|
|
type Rec is record
|
|
I : Short_Integer;
|
|
C : Character;
|
|
end record;
|
|
|
|
type Derived is new Rec;
|
|
for Derived use record
|
|
I at 1 range 0 .. 15;
|
|
C at 0 range 0 .. 7;
|
|
end record;
|
|
|
|
Init : constant Rec := ( 1515, 'A' );
|
|
|
|
D1 : Derived;
|
|
D2 : Derived;
|
|
pragma Volatile (D2);
|
|
for D2'Address use D1'Address;
|
|
|
|
begin
|
|
D2 := Derived (Init);
|
|
if D1 /= Derived (Init) then
|
|
raise Program_Error;
|
|
end if;
|
|
end;
|