OSDN Git Service

69452c98f3ae525b11c8554aea5d98606f2adad5
[pf3gnuchains/gcc-fork.git] / gcc / testsuite / gnat.dg / array16.ads
1 -- { dg-do compile }
2 -- { dg-options "-O -gnatn -fdump-tree-optimized" }
3
4 with Array16_Pkg;
5
6 package Array16 is
7
8   type T1 (D : Integer) is record
9     case D is
10       when 1 => I : Integer;
11       when others => null;
12     end case;
13   end record;
14
15   type Arr is array (Integer range <>) of Integer;
16
17   type My_T1 is new T1 (Array16_Pkg.N);
18   type My_T2 is new Arr (1 .. Integer'Min (2, Array16_Pkg.N));
19
20   function F1 (A : access My_T1) return My_T1;
21   pragma Inline (F1);
22
23   function F2 (A : access My_T2) return My_T2;
24   pragma Inline (F2);
25
26   procedure Proc (A : access My_T1; B : access My_T2);
27
28 end Array16;
29
30 -- { dg-final { scan-tree-dump-not "secondary_stack" "optimized" } }
31 -- { dg-final { cleanup-tree-dump "optimized" } }