1-- { dg-do compile } 2-- { dg-options "-O2" } 3 4with Ada.Strings.Unbounded; use Ada.Strings.Unbounded; 5 6package Opt1 is 7 8 type Ptr is access all Integer; 9 10 type R1 is record 11 I1 : Integer; 12 I2 : Integer := 0; 13 I3 : Integer; 14 end record; 15 16 type R2 is record 17 P : Ptr; 18 F1 : R1; 19 end record; 20 21 type R3 is record 22 S : Unbounded_String; 23 F1 : R2; 24 I : Integer := 0; 25 F2 : R2; 26 end record; 27 28end Opt1; 29