2 -- { dg-options "-O -gnatn -fdump-tree-optimized" }
8 type T1 (D : Integer) is record
10 when 1 => I : Integer;
15 type Arr is array (Integer range <>) of Integer;
17 type My_T1 is new T1 (Array16_Pkg.N);
18 type My_T2 is new Arr (1 .. Integer'Min (2, Array16_Pkg.N));
20 function F1 (A : access My_T1) return My_T1;
23 function F2 (A : access My_T2) return My_T2;
26 procedure Proc (A : access My_T1; B : access My_T2);
30 -- { dg-final { scan-tree-dump-not "secondary_stack" "optimized" } }
31 -- { dg-final { cleanup-tree-dump "optimized" } }