aliased_prefix_accessibility.adb

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

ADB
69
字号
--  { dg-do run }with Tagged_Type_Pkg;  use Tagged_Type_Pkg;with Ada.Text_IO;      use Ada.Text_IO;      procedure Aliased_Prefix_Accessibility is     T_Obj : aliased TT;            T_Obj_Acc : access TT'Class := T_Obj'Access;      type Nested_TT is limited record      TT_Comp : aliased TT;   end record;   NTT_Obj : Nested_TT;   ATT_Obj : array (1 .. 2) of aliased TT;begin   begin      T_Obj_Acc := Pass_TT_Access (T_Obj'Access);      Put_Line ("FAILED (1): call should have raised an exception");   exception      when others =>         null;   end;   begin      T_Obj_Acc := T_Obj.Pass_TT_Access;      Put_Line ("FAILED (2): call should have raised an exception");   exception      when others =>         null;   end;   begin      T_Obj_Acc := Pass_TT_Access (NTT_Obj.TT_Comp'Access);      Put_Line ("FAILED (3): call should have raised an exception");   exception      when others =>         null;   end;      begin      T_Obj_Acc := NTT_Obj.TT_Comp.Pass_TT_Access;      Put_Line ("FAILED (4): call should have raised an exception");   exception      when others =>         null;   end;      begin      T_Obj_Acc := Pass_TT_Access (ATT_Obj (1)'Access);      Put_Line ("FAILED (5): call should have raised an exception");   exception      when others =>         null;   end;      begin      T_Obj_Acc := ATT_Obj (2).Pass_TT_Access;      Put_Line ("FAILED (6): call should have raised an exception");   exception      when others =>         null;   end;end Aliased_Prefix_Accessibility;

⌨️ 快捷键说明

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