-- { dg-do compile } | |
-- { dg-options "-O -gnatws" } | |
with Unchecked_Conversion; | |
package body Opt81 is | |
procedure Copy (From, To : Rec) is | |
Len : constant Natural := From.A.all'Length; | |
subtype Fixed_String is String (1 .. Len); | |
type Fixed_String_Access is access Fixed_String; | |
function To_Fixed is new | |
Unchecked_Conversion (Source => String_Access, | |
Target => Fixed_String_Access); | |
S : Fixed_String_Access := To_Fixed (To.A); | |
begin | |
S (1 .. Len) := From.A.all; | |
end; | |
end Opt81; |