rt_gccstream/gcc/testsuite/gnat.dg/lhs_view_convert.adb

30 lines
544 B
Ada

-- { dg-do run }
-- { dg-options "-gnatp" }
procedure Lhs_View_Convert is
type Root is tagged record
RV : Natural;
end record;
type Derived is new Root with null record;
Root_Instance : Root := (RV => 1);
Derived_Instance : Derived;
procedure Process is
X : Natural := Derived_Instance.RV;
begin
null;
end;
begin
Derived_Instance.RV := 2;
Root (Derived_Instance) := Root (Root_Instance);
if Derived_Instance.RV /= Root_Instance.RV then
raise Program_Error;
end if;
end;