aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Botcazou <ebotcazou@adacore.com>2011-09-21 13:47:25 +0000
committerEric Botcazou <ebotcazou@gcc.gnu.org>2011-09-21 13:47:25 +0000
commit5da9694ccbb40e23a550aa00c48761e224a85202 (patch)
tree93e98a5f092b9e456c9309e6d229f33694bca91c
parent116b9c0785184300549dff91bd111f677aea21fe (diff)
downloadgcc-5da9694ccbb40e23a550aa00c48761e224a85202.zip
gcc-5da9694ccbb40e23a550aa00c48761e224a85202.tar.gz
gcc-5da9694ccbb40e23a550aa00c48761e224a85202.tar.bz2
* gnat.dg/opt19.adb: New test.
From-SVN: r179047
-rw-r--r--gcc/testsuite/ChangeLog4
-rw-r--r--gcc/testsuite/gnat.dg/opt19.adb27
2 files changed, 31 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index dcaab9c..bfdfe44 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,7 @@
+2011-09-21 Eric Botcazou <ebotcazou@adacore.com>
+
+ * gnat.dg/opt19.adb: New test.
+
2011-09-21 Terry Guo <terry.guo@arm.com>
* gcc.target/arm/neon-thumb2-move.c: Skip the warning message
diff --git a/gcc/testsuite/gnat.dg/opt19.adb b/gcc/testsuite/gnat.dg/opt19.adb
new file mode 100644
index 0000000..5619da1
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/opt19.adb
@@ -0,0 +1,27 @@
+-- { dg-do compile }
+-- { dg-options "-O" }
+
+procedure Opt19 is
+
+ type Enum is (One, Two);
+
+ type Vector_T is array (Enum) of Integer;
+
+ Zero_Vector : constant Vector_T := (Enum => 0);
+
+ type T is record
+ Vector : Vector_T;
+ end record;
+
+ procedure Nested (Value : in out T; E : Enum; B : out Boolean) is
+ I : Integer renames Value.Vector(E);
+ begin
+ B := I /= 0;
+ end;
+
+ Obj : T := (Vector => Zero_Vector);
+ B : Boolean;
+
+begin
+ Nested (Obj, One, B);
+end;