tfren.adb

来自「用于进行gcc测试」· ADB 代码 · 共 36 行

ADB
36
字号
--  { dg-do run }--  { dg-options "-gnatws" }procedure Tfren is   type R;   type Ar is access all R;   type R is record F1: Integer; F2: Ar; end record;      for R use record      F1 at 1 range 0..31;     F2 at 5 range 0..63;   end record;                                                   procedure Foo (RR1, RR2: Ar);   procedure Foo (RR1, RR2 : Ar) is   begin      if RR2.all.F1 /= 55 then raise program_error; end if;   end;   R3: aliased R := (55, Null);   R2: aliased R := (44, R3'Access);   R1: aliased R := (22, R2'Access);   P: Ar := R1'Access;   X: Ar renames P.all.F2;   Y: Ar renames X.all.F2;begin   P := R2'Access;   R1.F2 := R1'Access;   Foo (X, Y);   Y.F1 := -111;   if Y.F1 /= -111 then raise Constraint_Error; end if;end Tfren;

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?