From 95e5cc03aa388825072b911b97ebee65da8dcc44 Mon Sep 17 00:00:00 2001 From: ebotcazou Date: Mon, 19 Dec 2011 19:17:10 +0000 Subject: [PATCH] PR tree-optimization/51580 * gnat.dg/specs/loop_optimization1.ads: New test. * gnat.dg/specs/loop_optimization1_pkg.ad[sb]: New helper. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182491 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gnat.dg/specs/loop_optimization1.ads | 14 ++++++++++++++ gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.adb | 16 ++++++++++++++++ gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.ads | 13 +++++++++++++ 4 files changed, 49 insertions(+) create mode 100644 gcc/testsuite/gnat.dg/specs/loop_optimization1.ads create mode 100644 gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.adb create mode 100644 gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.ads diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fcbed1e..f74bad7 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2011-12-19 Eric Botcazou + + PR tree-optimization/51580 + * gnat.dg/specs/loop_optimization1.ads: New test. + * gnat.dg/specs/loop_optimization1_pkg.ad[sb]: New helper. + 2011-12-19 Richard Guenther PR lto/51573 diff --git a/gcc/testsuite/gnat.dg/specs/loop_optimization1.ads b/gcc/testsuite/gnat.dg/specs/loop_optimization1.ads new file mode 100644 index 0000000..020ddcd --- /dev/null +++ b/gcc/testsuite/gnat.dg/specs/loop_optimization1.ads @@ -0,0 +1,14 @@ +-- { dg-do compile } +-- { dg-options "-O3" } + +with Loop_Optimization1_Pkg; + +package Loop_Optimization1 is + + type Kind_Type is (One, Two, Three, Four); + type Array_Type is array (Kind_Type) of Boolean; + pragma Pack (Array_Type); + + package Q is new Loop_Optimization1_Pkg (Boolean, Kind_Type, Array_Type); + +end Loop_Optimization1; diff --git a/gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.adb b/gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.adb new file mode 100644 index 0000000..f55dbb0 --- /dev/null +++ b/gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.adb @@ -0,0 +1,16 @@ +package body Loop_Optimization1_Pkg is + + type Unconstrained_Array_Type + is array (Index_Type range <>) of Element_Type; + + procedure Local (UA : in out Unconstrained_Array_Type) is + begin + null; + end; + + procedure Proc (CA : in out Constrained_Array_Type) is + begin + Local (Unconstrained_Array_Type (CA)); + end; + +end Loop_Optimization1_Pkg; diff --git a/gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.ads b/gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.ads new file mode 100644 index 0000000..577b3a2 --- /dev/null +++ b/gcc/testsuite/gnat.dg/specs/loop_optimization1_pkg.ads @@ -0,0 +1,13 @@ +-- { dg-excess-errors "no code generated" } + +generic + + type Element_Type is private; + type Index_Type is (<>); + type Constrained_Array_Type is array (Index_Type) of Element_Type; + +package Loop_Optimization1_Pkg is + + procedure Proc (CA : in out Constrained_Array_Type); + +end Loop_Optimization1_Pkg; -- 2.7.4